<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>MGED Command Index</title>
    <style type="text/css">
      body {
          background-color: #FFFFEE;
          color: #000000;
          margin: 5px;
          padding: 10px;
      }
      h1.c24 {font-size: 100%; text-align: center}
      li.c23 {list-style: none; display: inline}
      div.c22 {margin-left: 4em}
      pre.c21 {font-size: 100%}
      span.c20 {font-family: Courier New; font-size: 80%}
      span.c18 {font-size: 100%;}
      span.c16 {font-size: 100%;}
      span.c14 {font-size: 80%; font-weight: bold}
      span.c13 {font-family: Courier; font-size: 80%}
      span.c12 {font-size: 100%;}
      dd.c11 {font-size: 100%;}
      dt.c10 {font-size: 100%; margin-top:20px;}
      dd.c9 {font-size: 100%}
      dt.c8 {font-size: 100%; margin-top:20px;}
      div.c7 {margin-left: 2em}
      span.c6 {font-size: 100%}
      hr.c3 {
          text-align: right;
          border: 10px solid #ccc;
      }
      span.c2 {font-size: 100%}
      div.c1 {
          text-align: center;
          border: 3px solid #ccc;
          background: #eef;
          margin: 0px;
          margin-left: -3px;
          margin-right: -1px;
      }
      ul.menu {
          -webkit-column-count: 5; -webkit-column-gap:5%;
          -moz-column-count:5; -moz-column-gap:5%;
          -o-column-count:5; -o-column-gap:5%;
          column-count:5; column-gap:5%;
          -webkit-row-gap:1px;
          -moz-row-gap:1px;
          -o-row-gap:1px;
          row-gap:1px;
          padding: 0px;
          background: #fff;
          border: 3px solid #ccc;
          margin-left: -3px;
          margin-top: -3px;
          margin-right: -1px;
      }
      li.menu {
          background: #f0f0ff;
          list-style: none;
          display: block;
          text-align: center;
          padding: 0px;
          margin-left: 0px;
          margin-right: 0px;
      }
      li.menu:nth-child(odd) {
          background: #fff;
          list-style: none;
          display: block;
          padding: 0px;
          margin-left: 0px;
          margin-right: 0px;
      }

    </style>
  </head>
  <body>
    <a name="MGED_User_Commands" id="MGED_User_Commands"></a>
    <table cellspacing="8">
      <tr>
        <td><a href="mged_cmd_index.html#MGED_User_Commands">MGED
            User Commands</a></td>
        <td><a href=
               "mged_cmd_index.html#MGED_Developer_Commands">MGED Developer
            Commands</a></td>
      </tr>
    </table>
    <div class="c1">
      <h1>MGED User Commands</h1>
    </div>
<!--    <p>
      <div class="c1">
        <table align="center" cellspacing="0" border="0" cellpadding="12" width="100%">
          <tr>
            <td>-->
              <ul class="menu">

                <li class="menu"><a href="#percent">%</a></li>
                <li class="menu"><a href="#3ptarb">3ptarb</a></li>
                <li class="menu"><a href="#questionmark">?</a></li>
                <li class="menu"><a href="#questionmarkdevel">?devel</a></li>
                <li class="menu"><a href="#questionmarklib">?lib</a></li>

                <li class="menu"><a href="#B">B</a></li>
                <li class="menu"><a href="#E">E</a></li>
                <li class="menu"><a href="#M">M</a></li>
                <li class="menu"><a href="#Z">Z</a></li>
                <li class="menu"><a href="#adc">adc</a></li>

                <li class="menu"><a href="#ae">ae</a></li>
                <li class="menu"><a href="#analyze">analyze</a></li>
                <li class="menu"><a href="#animmate">animmate</a></li>
                <li class="menu"><a href="#apropos">apropos</a></li>
                <li class="menu"><a href="#aproposdevel">aproposdevel</a></li>

                <li class="menu"><a href="#aproposlib">aproposlib</a></li>
                <li class="menu"><a href="#arb">arb</a></li>
                <li class="menu"><a href="#arced">arced</a></li>
                <li class="menu"><a href="#area">area</a></li>
                <li class="menu"><a href="#arot">arot</a></li>

                <li class="menu"><a href="#attach">attach</a></li>
                <li class="menu"><a href="#attr">attr</a></li>
                <li class="menu"><a href="#autoview">autoview</a></li>
                <li class="menu"><a href="#bev">bev</a></li>
                <li class="menu"><a href="#bo">bo</a></li>

                <li class="menu"><a href="#bot_condense">bot_condense</a></li>
                <li class="menu"><a href="#bot_decimate">bot_decimate</a></li>
                <li class="menu"><a href="#bot_face_fuse">bot_face_fuse</a></li>
                <li class="menu"><a href="#bot_face_sort">bot_face_sort</a></li>
                <li class="menu"><a href="#bot_face_fuse">bot_face_fuse</a></li>

                <li class="menu"><a href="#bot_vertex_fuse">bot_vertex_fuse</a></li>
                <li class="menu"><a href="#build_region">build_region</a></li>
                <li class="menu"><a href="#c">c</a></li>
                <li class="menu"><a href="#cat">cat</a></li>
                <li class="menu"><a href="#center">center</a></li>

                <li class="menu"><a href="#check">check</a></li>
                <li class="menu"><a href="#color">color</a></li>
                <li class="menu"><a href="#comb">comb</a></li>
                <li class="menu"><a href="#comb_color">comb_color</a></li>
                <li class="menu"><a href="#copyeval">copyeval</a></li>

                <li class="menu"><a href="#copymat">copymat</a></li>
                <li class="menu"><a href="#cp">cp</a></li>
                <li class="menu"><a href="#cpi">cpi</a></li>
                <li class="menu"><a href="#d">d</a></li>
                <li class="menu"><a href="#db">db</a></li>

                <li class="menu"><a href="#db_glob">db_glob</a></li>
                <li class="menu"><a href="#dbconcat">dbconcat</a></li>
                <li class="menu"><a href="#debugbu">debugbu</a></li>
                <li class="menu"><a href="#debugdir">debugdir</a></li>
                <li class="menu"><a href="#debuglib">debuglib</a></li>

                <li class="menu"><a href="#debugnmg">debugnmg</a></li>
                <li class="menu"><a href="#decompose">decompose</a></li>
                <li class="menu"><a href="#delay">delay</a></li>
                <li class="menu"><a href="#dm">dm</a></li>

                <li class="menu"><a href="#draw">draw</a></li>
                <li class="menu"><a href="#dup">dup</a></li>
                <li class="menu"><a href="#e">e</a></li>
                <li class="menu"><a href="#eac">eac</a></li>
                <li class="menu"><a href="#echo">echo</a></li>

                <li class="menu"><a href="#edcodes">edcodes</a></li>
                <li class="menu"><a href="#edcolor">edcolor</a></li>
                <li class="menu"><a href="#edcomb">edcomb</a></li>
                <li class="menu"><a href="#edgedir">edgedir</a></li>
                <li class="menu"><a href="#edmater">edmater</a></li>

                <li class="menu"><a href="#eqn">eqn</a></li>
                <li class="menu"><a href="#erase">erase</a></li>
                <li class="menu"><a href="#ev">ev</a></li>

                <li class="menu"><a href="#exit">exit</a></li>
                <li class="menu"><a href="#expand">expand</a></li>
                <li class="menu"><a href="#expand_comb">expand_comb</a></li>
                <li class="menu"><a href="#extrude">extrude</a></li>
                <li class="menu"><a href="#eye_pt">eye_pt</a></li>

                <li class="menu"><a href="#facedef">facedef</a></li>
                <li class="menu"><a href="#facetize">facetize</a></li>
                <li class="menu"><a href="#find">find</a></li>
                <li class="menu"><a href="#fracture">fracture</a></li>

                <li class="menu"><a href="#g">g</a></li>
                <li class="menu"><a href="#garbage_collect">garbage_collect</a></li>
                <li class="menu"><a href="#gui">gui</a></li>
                <li class="menu"><a href="#heal">heal</a></li>
                <li class="menu"><a href="#help">help</a></li>
                <li class="menu"><a href="#helpdevel">helpdevel</a></li>

                <li class="menu"><a href="#helplib">helplib</a></li>
                <li class="menu"><a href="#hide">hide</a></li>
                <li class="menu"><a href="#history">history</a></li>
                <li class="menu"><a href="#i">i</a></li>
                <li class="menu"><a href="#idents">idents</a></li>

                <li class="menu"><a href="#ill">ill</a></li>
                <li class="menu"><a href="#in">in</a></li>
                <li class="menu"><a href="#inside">inside</a></li>
                <li class="menu"><a href="#item">item</a></li>
                <li class="menu"><a href="#joint">joint</a></li>

                <li class="menu"><a href="#journal">journal</a></li>
                <li class="menu"><a href="#keep">keep</a></li>
                <li class="menu"><a href="#keypoint">keypoint</a></li>
                <li class="menu"><a href="#kill">kill</a></li>
                <li class="menu"><a href="#killall">killall</a></li>

                <li class="menu"><a href="#killtree">killtree</a></li>
                <li class="menu"><a href="#knob">knob</a></li>
                <li class="menu"><a href="#l">l</a></li>
                <li class="menu"><a href="#labelvert">labelvert</a></li>
                <li class="menu"><a href="#listeval">listeval</a></li>

                <li class="menu"><a href="#loadtk">loadtk</a></li>
                <li class="menu"><a href="#lookat">lookat</a></li>
                <li class="menu"><a href="#ls">ls</a></li>
                <li class="menu"><a href="#make">make</a></li>

                <li class="menu"><a href="#mater">mater</a></li>
                <li class="menu"><a href="#matpick">matpick</a></li>
                <li class="menu"><a href="#mirface">mirface</a></li>

                <li class="menu"><a href="#mirror">mirror</a></li>
                <li class="menu"><a href="#mrot">mrot</a></li>
                <li class="menu"><a href="#mv">mv</a></li>
                <li class="menu"><a href="#mvall">mvall</a></li>
                <li class="menu"><a href="#nirt">nirt</a></li>

                <li class="menu"><a href="#nmg_collapse">nmg_collapse</a></li>
                <li class="menu"><a href="#nmg_simplify">nmg_simplify</a></li>
                <li class="menu"><a href="#oed">oed</a></li>
                <li class="menu"><a href="#opendb">opendb</a></li>
                <li class="menu"><a href="#orientation">orientation</a></li>

                <li class="menu"><a href="#orot">orot</a></li>
                <li class="menu"><a href="#oscale">oscale</a></li>
                <li class="menu"><a href="#overlay">overlay</a></li>
                <li class="menu"><a href="#p">p</a></li>
                <li class="menu"><a href="#pathlist">pathlist</a></li>

                <li class="menu"><a href="#paths">paths</a></li>
                <li class="menu"><a href="#permute">permute</a></li>
                <li class="menu"><a href="#plot">plot</a></li>

                <li class="menu"><a href="#prcolor">prcolor</a></li>
                <li class="menu"><a href="#prefix">prefix</a></li>
                <li class="menu"><a href="#press">press</a></li>
                <li class="menu"><a href="#preview">preview</a></li>

                <li class="menu"><a href="#prj_add">prj_add</a></li>
                <li class="menu"><a href="#ps">ps</a></li>
                <li class="menu"><a href="#pull">pull</a></li>
                <li class="menu"><a href="#push">push</a></li>
                <li class="menu"><a href="#putmat">putmat</a></li>
                <li class="menu"><a href="#q">q</a></li>

                <li class="menu"><a href="#qorot">qorot</a></li>
                <li class="menu"><a href="#qray">qray</a></li>
                <li class="menu"><a href="#query_ray">query_ray</a></li>
                <li class="menu"><a href="#quit">quit</a></li>
                <li class="menu"><a href="#qvrot">qvrot</a></li>

                <li class="menu"><a href="#r">r</a></li>
                <li class="menu"><a href="#rcodes">rcodes</a></li>
                <li class="menu"><a href="#rccblend">rcc-blend</a></li>
                <li class="menu"><a href="#rcccap">rcc-cap</a></li>
                <li class="menu"><a href="#rcctgc">rcc-tgc</a></li>

                <li class="menu"><a href="#rcctor">rcc-tor</a></li>
                <li class="menu"><a href="#red">red</a></li>
                <li class="menu"><a href="#refresh">refresh</a></li>

                <li class="menu"><a href="#regdebug">regdebug</a></li>
                <li class="menu"><a href="#regdef">regdef</a></li>
                <li class="menu"><a href="#regions">regions</a></li>
                <li class="menu"><a href="#release">release</a></li>
                <li class="menu"><a href="#rfarb">rfarb</a></li>

                <li class="menu"><a href="#rm">rm</a></li>
                <li class="menu"><a href="#rmater">rmater</a></li>
                <li class="menu"><a href="#rmats">rmats</a></li>
                <li class="menu"><a href="#rot">rot</a></li>
                <li class="menu"><a href="#rotobj">rotobj</a></li>

                <li class="menu"><a href="#rpparch">rpp-arch</a></li>
                <li class="menu"><a href="#rppcap">rpp-cap</a></li>
                <li class="menu"><a href="#rrt">rrt</a></li>
                <li class="menu"><a href="#rt">rt</a></li>
                <li class="menu"><a href="#rtcheck">rtcheck</a></li>
                  
                <li class="menu"><a href="#saveview">saveview</a></li>
                <li class="menu"><a href="#sca">sca</a></li>
                <li class="menu"><a href="#sed">sed</a></li>
                <li class="menu"><a href="#setview">setview</a></li>
                  
                <li class="menu"><a href="#shader">shader</a></li>
                <li class="menu"><a href="#shells">shells</a></li>
                <li class="menu"><a href="#showmats">showmats</a></li>
                <li class="menu"><a href="#size">size</a></li>
                <li class="menu"><a href="#solids">solids</a></li>
                  
                <li class="menu"><a href="#sphpart">sph-part</a></li>
                <li class="menu"><a href="#status">status</a></li>
                <li class="menu"><a href="#summary">summary</a></li>
                <li class="menu"><a href="#sv">sv</a></li>
                <li class="menu"><a href="#sync">sync</a></li>
                  
                <li class="menu"><a href="#t">t</a></li>
                <li class="menu"><a href="#ted">ted</a></li>
                <li class="menu"><a href="#title">title</a></li>
                <li class="menu"><a href="#tol">tol</a></li>
                <li class="menu"><a href="#tops">tops</a></li>
                  
                <li class="menu"><a href="#torrcc">tor-rcc</a></li>
                <li class="menu"><a href="#tra">tra</a></li>
                <li class="menu"><a href="#track">track</a></li>
                <li class="menu"><a href="#translate">translate</a></li>
                <li class="menu"><a href="#tree">tree</a></li>
                  
                <li class="menu"><a href="#units">units</a></li>
                <li class="menu"><a href="#vars">vars</a></li>
                <li class="menu"><a href="#vdraw">vdraw</a></li>
                <li class="menu"><a href="#view">view</a></li>
                  
                <li class="menu"><a href="#viewsize">viewsize</a></li>
                <li class="menu"><a href="#vnirt">vnirt</a></li>
                <li class="menu"><a href="#vquery_ray">vquery_ray</a></li>
                <li class="menu"><a href="#vrot">vrot</a></li>
                  
                <li class="menu"><a href="#wcodes">wcodes</a></li>
                <li class="menu"><a href="#whatid">whatid</a></li>
                <li class="menu"><a href="#which_shader">which_shader</a></li>
                <li class="menu"><a href="#whichair">whichair</a></li>
                <li class="menu"><a href="#whichid">whichid</a></li>
                  
                <li class="menu"><a href="#who">who</a></li>
                <li class="menu"><a href="#wmater">wmater</a></li>
                <li class="menu"><a href="#x">x</a></li>
                <li class="menu"><a href="#xpush">xpush</a></li>
                <li class="menu"><a href="#zoom">zoom</a></li>
              </ul>
<!--            </td>
          </tr>
        </table>
      </div>
    </p>-->

    <hr class="c3">
    <dl>
      <dt><a name="BM_" id="BM_"></a><a name="percent" id=
                                        "percent"></a><b>%</b></dt>
      <dd>Start a "/bin/sh" shell process for the user.
        The <i>mged</i> prompt will be replaced by a system prompt for
        the shell, and the user may perform any legal shell commands.
        The <i>mged</i> process waits for the shell process to finish,
        which occurs when the user exits the shell. This only works in
        a command window associated with a tty (i.e., the window used
        to start <i>mged</i> in classic mode).</dd>
      <br>
      <dd></dd>
      <dt>Examples:</dt>
      <dd></dd>
      <dd><tt>mged&gt; </tt><b>%</b><br>
            -- Start a new shell process.<br></dd>
      <dd><tt>$ </tt><b>ls -al</b><br>
            -- Issue any shell commands.<br></dd>
      <dd><tt>$ </tt><b>exit</b><br>
          -- Exit the shell.<br></dd>
      <dd><tt>mged&gt; </tt><span class="c2"><br>
          -- Continue editing in <i>mged</i>.</br></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt><b><a name="3ptarb" id="3ptarb"></a>3ptarb</b> [
        <i>arb_name x1 y1 z1 x2 y2 z2 x3 y3 z3 x|y|z coord1 coord2
          thickness</i>]</dt>
      <dd>Build an <a href="#ARB">ARB8</a> shape by extruding a
        quadrilateral through a given <i>thickness</i>. The arguments
        may be provided on the command line; if they are not, they will
        be prompted for. The <i>x1, y1, </i> and <i>z1</i> are the
        coordinates of one corner of the quadrilateral. <i>x2, y2,
          z2, </i> and <i>x3, y3, z3</i> are the coordinates of two other
        corners. Only two coordinates of the fourth point are
        specified, and the code calculates the third coordinate to
        ensure all four points are coplanar. The <i>x|y|z</i> parameter
        indicates which coordinate of the fourth point will be
        calculated by the code. The <i>coord1</i> and <i>coord2</i>
        parameters supply the other two coordinates. The direction of
        extrusion for the quadrilateral is determined from the order of
        the four resulting points by the right-hand rule; the
        quadrilateral is extruded toward a viewer for whom the points
        appear in counter-clockwise order.</dd>
      <dd></dd>
      <dt class="c8">Examples:</dt>
      <dd></dd>
      <dd class="c9"><tt>mged&gt; </tt><b>3ptarb</b><br>
        <p><span class="c6">-- Start the <i>3ptarb</i>
        command.<br></span></p>
        <p><span class="c6"><tt>Enter name for this arb:</tt>
            <span class="c2"><b>thing</b><br>
              -- The new</span> <a href="#ARB"><span class=
                                                     "c2">ARB8</span></a> <span class="c2">will be named
              <i>thing</i>.<br></span></span></p>
        <p><span class="c6"><tt>Enter X, Y, Z for point 1:</tt>
            <span class="c2"><b>0 0 0</b><br>
            -- Point one is at the origin.<br></span></span></p>
        <p><span class="c6"><tt>Enter X, Y, Z for point 2:</tt>
            <span class="c2"><b>1 0 0</b><br>
              -- Point two is at (1, 0, 0).<br></span></span></p>
        <p><span class="c6"><tt>Enter X, Y, Z for point 3:</tt>
            <span class="c2"><b>1 1 0</b><br>
              -- Point three is at (1, 1, 0).<br></span></span></p>
        <p><span class="c6"><tt>Enter coordinate to solve for (x, y, or
              z):</tt> <span class="c2"><b>z</b><br>
              -- The code will calculate the <i>z</i> coordinate of the
              fourth point.<br></span></span></p>
        <p><span class="c6"><tt>Enter the X, Y coordinate values:</tt>
            <span class="c2"><b>0 1</b><br>
              -- The <i>x</i> and <i>y</i> coordinates of the fourth point
              are 0 and 1.<br></span></span></p>
        <p><span class="c6"><tt>Enter thickness for this arb:</tt>
            <span class="c2"><b>3</b><br>
              -- The new</span> <a href="#ARB"><span class=
                                                     "c2">ARB8</span></a> <span class="c2">will be 3</span> <a href=
                                                                                                               "#units"><span class="c2">units</span></a> <span class=
                                                                                                                                                                "c2">thick.<br></span></span></p>
        <p><span class="c6"><tt>mged&gt; </tt><span class=
                                                    "c2"><b>3ptarb thing 0 0 0 1 0 0 1 1 0 z 0 1 3</b><br>
              -- Same as above example, but with all arguments supplied on
              the command line.</span></span></p>
      </dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c10"><a name="questionmark" id=
                         "questionmark"></a><b>?</b></dt>
      <dd class="c11">Provide a list of available <i>mged</i>
        commands. The <a href="#questionmarkdevel">?devel</a>, <a href=
                                                                  "#questionmarklib">?lib</a>, <a href="#help">help</a>, <a href=
                                                                                                                            "#helpdevel">helpdevel</a>, and <a href="#helplib">helplib</a>
        commands provide additional information on available
        commands.</dd>
      <dd></dd>
      <dt class="c10"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c11"><span class="c6"><tt>mged&gt; </tt>
          <b>?</b></span></dd>
    </dl>
    <p><span class="c12">-- Get a list of available
        commands.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c10"><a name="questionmarkdevel" id=
                         "questionmarkdevel"></a><b>?devel</b></dt>
      <dd class="c11">Provide a list of available <i>mged
          developer</i> commands. The <a href="#questionmark">?</a>,
        <a href="#questionmarklib">?lib</a>, <a href="#help">help</a>,
        <a href="#helpdevel">helpdevel</a>, and <a href=
                                                   "#helplib">helplib</a> commands provide additional information
        on available commands.</dd>
      <dd></dd>
      <dt class="c10"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c11"><span class="c6"><tt>mged&gt; </tt>
          <b>?devel</b></span></dd>
    </dl>
    <p><span class="c12">-- Get a list of available <i>developer</i>
        commands.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c10"><a name="questionmarklib" id=
                         "questionmarklib"></a></dt>
      <dt class="c10"><b>?lib</b></dt>
      <dd class="c11">Provide a list of available <i>BRL-CAD</i>
        library interface commands. The <a href="#questionmark">?</a>,
        <a href="#questionmarkdevel">?devel</a>, <a href=
                                                    "#help">help</a>, <a href="#helpdevel">helpdevel</a>, and
        <a href="#helplib">helplib</a> commands provide additional
        information on available commands.</dd>
      <dd></dd>
      <dt class="c10"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c11"><span class="c6"><tt>mged&gt; </tt>
          <b>?lib</b></span></dd>
    </dl>
    <p><span class="c12">-- Get a list of available <i>BRL-CAD</i>
        library interface commands.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><b><a name="B" id="B"></a>B</b> [<i>-R -A -o -s
          C#/#/#</i>] &lt;<i>objects | attribute name/value
          pairs</i>&gt;</dt>
      <dd class="c9">Clear the <i>mged</i> display of any currently
        displayed objects, then display the list of objects provided in
        the parameter list. Equivalent to the <a href="#Z">Z</a>
        command followed by the command <a href="#draw">draw</a>
        &lt;<i>objects</i>&gt;. The <i>-C</i> option provides the user
        a way to specify a color that overrides all other color
        specifications including combination colors and region id-based
        colors. The <i>-A</i> and <i>-o</i> options allow the user to
        select objects by attribute. The -s option specifies that
        subtracted and intersected objects should be drawn with solid
        lines rather than dot-dash lines. The -<i>R</i> option means do
        not automatically resize the view if no other objects are
        displayed. See the draw command for a detailed description of
        the options.</dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>B
            some_object</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Clear the display, then display the
          object named <i>some_object</i>.</span></p>
      <p><span class="c6"><span class="c13">mged&gt; </span>
          <span class="c14">B -A -o Comment {First comment} Comment
            {Second comment}</span></span></p>
      <p><span class="c6">-- Clear the display, then draw objects
          that have a "Comment" attribute with a value of either "First
          comment" or "Second comment."</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="E" id="E"></a>E</b>
          [<i>-s</i>] &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">Display <i>objects</i> in an
          evaluated form. All the Boolean operations indicated in each
          object in <i>objects</i> will be performed, and a resulting
          faceted approximation of the actual objects will be displayed.
          Note that this is usually much slower than using the usual
          <a href="#draw">draw</a> command. The <i>-s</i>
          option provides a more accurate, but slower,
          approximation.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>E
            some_object</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Display a faceted approximation of
          <i>some_object</i>.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="M" id="M"></a>M</b>
          <i>1|0 xpos ypos</i></span></dt>
      <dd class="c9"><span class="c16">Send an mged mouse (i.e.,
          defaults to a middle mouse button) event. The first argument
          indicates whether the event should be a button press (1) or
          release (0). The xpos and ypos arguments specify the mouse
          position in mged screen coordinates between -2047 and +2047.
          With the default bindings, an mged mouse event while in the
          viewing mode moves the view so that the point currently at
          screen position (xpos, ypos) is repositioned to the center of
          the mged display (compare to the <a href="#center">center</a>
          command). The M command may also be used in other editing modes
          to simulate an mged mouse event.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>M 1 100
            100</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Translate the point at screen
          coordinates (100, 100) to the center of the <i>mged</i>
          display.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="Z" id=
                                          "Z"></a><b>Z</b></span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><i>Zap</i> (i.e., clear) the
          <i>mged</i> display.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>Z</b></span>
        <p><span class="c12">-- Clear the <i>mged</i> display.</span></p></dd>
      
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="adc" id=
                                            "adc"></a>adc</b> [<i>-i</i> ] [<i>subcommand</i>]</span></dt>
      <dd class="c9"><span class="c6">This command controls the
          angle/distance cursor. The <i>adc</i> command with no arguments
          toggles the display of the angle/distance cursor (ADC). The
          <i>-i</i> option, if specified, causes the given value(s) to be
          treated as increments. Note that the <i>-i</i> option is
          ignored when getting values or when used with subcommands where
          this option makes no sense. You can also control the position,
          angles, and radius of the ADC using a knob or the <a href=
                                                               "#knob">knob</a> command. This command accepts the following
          subcommands:</span></dd>
      <dd></dd>
      <div class="c22"><dl>
      <dt class="c8"><span class="c12"><b>vars</b></span></dt>
      <dd class="c9"><span class="c12">Returns a list of all ADC
          variables and their values (i.e., var = val).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>draw</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the draw
          parameter.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>a1</b>
          [<i>angle</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get angle1 in
          degrees.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>a2</b>
          [<i>angle</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get angle2 in
          degrees.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>dst</b>
          [<i>distance</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get radius (distance) of
          tick in local units.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>odst</b>
          [<i>distance</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get radius (distance) of
          tick (+-2047).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>hv</b>
          [<i>position</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get position (grid
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>xyz</b>
          [<i>position</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get position (model
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>x</b>
          [<i>xpos</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get horizontal position
          (+-2047).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>y</b>
          [<i>ypos</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get vertical position
          (+-2047).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>dh</b>
          <i>distance</i></span></dt>
      <dd class="c9"><span class="c16">Add to horizontal position
          (grid coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16"><b>dv</b> distance</span></dt>
      <dd class="c9"><span class="c16">Add to vertical position (grid
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16"><b>dx</b> distance</span></dt>
      <dd class="c9"><span class="c16">Add to x position (model
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>dy</b>
          <i>distance</i></span></dt>
      <dd class="c9"><span class="c16">Add to y position (model
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>dz</b>
          <i>distance</i></span></dt>
      <dd class="c9"><span class="c16">Add to z position (model
          coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchor_pos</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Anchor ADC to current position
          in model coordinates.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchor_a1</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Anchor angle1 to go through
          anchorpoint_a1.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchor_a2</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Anchor angle2 to go through
          anchorpoint_a2.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchor_dst</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Anchor tick distance to go
          through anchorpoint_dst.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchorpoint_a1</b> [<i>x y
            z</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get anchor point for
          angle1 (model coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchorpoint_a2</b> [<i>x y
            z</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get anchor point for
          angle2 (model coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>anchorpoint_dst</b> [<i>x y
            z</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get anchor point for
          tick distance (model coordinates and local units).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><b>reset</b></span></dt>
      <dd class="c9"><span class="c12">Reset all values to their
          defaults.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><b>help</b></span></dt>
      <dd class="c9"><span class="c12">Print the help
          message.</span></dd>
      <dd></dd>
      </dl></div>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <div class="c7">
        <dd class="c9">
          <span class="c12"><tt>mged&gt; </tt><b>adc</b><br>
            -- Toggle display of the angle/distance
          cursor<br></span></p>
          <p><span class="c12"><tt>mged&gt; </tt><span class="c2"><b>adc
                  a1 37.5</b><br>
                -- Set angle1 to 37.5˚.<br></span></span></p>
          <p><span class="c12"><tt>mged&gt; </tt><span class="c2"><b>adc
                  a1</b><br>
                37.5<br>
                -- Get angle1.<br></span></span></p>
          <p><span class="c12"><tt>mged&gt; </tt><span class="c2"><b>adc
                  xyz 100 0 0</b><br>
                -- Move ADC position to (100, 0, 0), model coordinates and
                local units.</span></span></p>
        </dd>
      </div>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="ae" id=
                                            "ae"></a>ae</b> [<i>-i</i>] <i>azimuth elevation</i>
          [<i>twist</i>]</span></dt>
      <dd class="c9"><span class="c6">Set the view orientation for
          the <i>mged</i> display by rotating the eye position about the
          <a href="#center">center</a> of the viewing cube. The eye
          position is determined by the supplied <a href=
                                                    "#AZIMUTH">azimuth</a> and <a href="#ELEVATION">elevation</a>
          angles (degrees). The <i>azimuth</i> angle is measured in the
          <i>xy</i> plane with the positive <i>x</i> direction
          corresponding to an azimuth of 0˚. Positive azimuth angles are
          measured counter-clockwise about the positive <i>z</i> axis.
          Elevation angles are measured from the <i>xy</i> plane with
          +90˚ corresponding to the positive <i>z</i> direction and -90
          corresponding to the negative <i>z</i> direction. If an
          optional <i>twist</i> angle is included, the view will be
          rotated about the viewing direction by the specified
          <i>twist</i> angle. The <i>-i</i> option results in the angles
          supplied being interpreted as increments.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>ae -90
            90</b></span></dd>
    </dl>
    <p><span class="c6">-- View from top direction.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ae 270 0</b><br>
            -- View from right hand side.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ae 35 25 10</b><br>
            -- View from azimuth 35, elevation 25, with view rotated by
            10˚.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ae -i 0 0 5</b><br>
            -- Rotate the current view through 5˚ about the viewing
            direction.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="analyze" id=
                                            "analyze"></a>analyze</b> [<i>arb_name</i>]</span></dt>
      <dd class="c9"><span class="c6">The "analyze" command displays
          the rotation and fallback angles, surface area, and plane
          equation for each face of the <a href="#ARB">ARB</a> specified
          on the command line. The total surface area and volume and the
          length of each edge are also displayed. If executed while
          editing an <i>ARB, </i> the <i>arb_name</i> may be omitted, and
          the <i>ARB</i> being edited will be analyzed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>analyze
            arb_name</b></span></dd>
    </dl>
    <p><span class="c6">-- Analyze the <i>ARB</i> named
        <i>arb_name.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="animmate" id=
                                          "animmate"></a><b>animmate</b></span></dt>
      <dd class="c9"><span class="c12">The "animmate" command starts
          the Tcl/Tk-based animation tool. The capabilities and correct
          use of this command are too extensive to be described here, but
          there is a <a href="">tutorial</a> available.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="apropos" id=
                                            "apropos"></a>apropos</b> <i>keyword</i></span></dt>
      <dd class="c9"><span class="c16">The "apropos" command searches
          through the one-line usage messages for each mged command and
          displays the name of each command where a match is
          found.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">&nbsp;</span></dt>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>apropos
            region</b></span></dd>
    </dl>
    <p><span class="c6">-- List all commands that contain the word
        "region" in their one-line usage messages.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="aproposdevel" id=
                                            "aproposdevel"></a>aproposdevel</b> <i>keyword</i></span></dt>
      <dd class="c9"><span class="c16">The "aproposdevel" command
          searches through the one-line usage messages for each mged
          developer command and displays the name of each command where a
          match is found.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>aproposdevel region</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List all <i>developer</i> commands that
          contain the word "region" in their one-line usage
          messages.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="aproposlib" id=
                                            "aproposlib"></a>aproposlib</b> <i>keyword</i></span></dt>
      <dd class="c9"><span class="c16">The "aproposlib" command
          searches through the one-line usage messages for each BRL-CAD
          library interface command and displays the name of each command
          where a match is found.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>aproposlib
            mat</b></span></dd>
    </dl>
    <p><span class="c6">-- List all commands that contain the word
        "mat" in their one-line usage messages.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="arb" id=
                                            "arb"></a>arb</b> <i>arb_name rotation fallback</i></span></dt>
      <dd class="c9"><span class="c16">The "arb" command creates a
          new <a href="#ARB">ARB</a> shape with the specified arb_name.
          The new ARB will be 20 inches by 20 inches and 2 inches thick.
          The square faces will be perpendicular to the direction defined
          by the rotation and fallback angles. This direction can be
          determined by interpreting the rotation angle as an <a href=
                                                                 "#AZIMUTH">azimuth</a> and the fallback angle as an <a href=
                                                                                                                        "#ELEVATION">elevation</a> as in the <a href="#ae">ae</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>arb
            new_arb 35 25</b></span></dd>
    </dl>
    <p><span class="c6">-- Create <i>new_arb</i> with a rotation
        angle of 35˚ and a fallback angle of 25˚.</span></p>
    <p><span class="c6"><span class="c2"><br></span>
        <tt>mged&gt; </tt><span class=
                                "c2">ae</span> <b><span class="c2">35 25</span></b>
        <span class="c2"><br>
          -- Rotate view to look straight on at square face of
          <i>new_arb</i></span></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="arced" id=
                                            "arced"></a>arced</b> <i>comb/memb anim_command</i></span></dt>
      <dd class="c9"><span class="c16">The objects in a BRL-CAD model
          are stored as Boolean combinations of primitive shapes and/or
          other combinations. These combinations are stored as Boolean
          trees, with each leaf of the tree including a corresponding
          transformation matrix. The "arced" command provides a means for
          directly editing these matrices. The first argument to the
          "arced" command must identify the combination and which
          member�s matrix is to be edited. The comb/memb argument
          indicates that member memb of combination comb has the matrix
          to be edited. The remainder of the "arced" command line
          consists of an animation command to be applied to that matrix.
          The available animation commands are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><i><span class="c2">matrix rarc
              &lt;xlate|rot</span></i><span class="c2">&gt; <i>matrix
              elements</i><br>
            -- Replace the members matrix with the given
            matrix.</span></span></li>
      <li><span class="c6"><i>matrix lmul &lt;xlate|ro</i>&gt;
          <i>matrix elements</i> .<br>
          -- Left multiply the members matrix with the given
          matrix.</span></li>
      <li><span class="c6"><i>matrix rmul &lt;xlate|rot</i>&gt;
          <i>matrix elements.</i><br>
          -- Right multiply the members matrix with the given
          matrix.<br></span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>arced
            body/head matrix rot 0 0 45</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Rotate member <i>head</i> (in
          combination <i>body</i>) about the <i>z</i> axis through a 45˚
          angle. By default, the <i>matrix</i> commands expect a list of
          16 matrix elements to define a matrix. The <i>xlate</i> option
          may be used along with three translation distances in the
          <i>x</i>, <i>y</i>, and <i>z</i> directions (in mm) as a
          shorthand notation for a matrix that is pure translation.
          Similarly, the <i>rot</i> option along with rotation angles
          (degrees) about the <i>x</i>, <i>y</i>, and <i>z</i> axes may
          be used as shorthand for a matrix that is pure
          rotation.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="area" id=
                                            "area"></a>area</b> [<i>tolerance</i>]</span></dt>
      <dd class="c9"><span class="c6">The "area" command calculates
          an approximate presented area of one region in the <i>mged</i>
          display. For this command to work properly, a single
          <i>BRL-CAD</i> <a href="#r">region</a> must be displayed using
          the <a href="#E">E</a> command. The <i>tolerance</i> is the
          distance required between two vertices in order for them to be
          recognized as distinct vertices. This calculation considers
          only the minimum bounding polygon of the region and ignores
          holes.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><a href="#Z">Z</a></span></dd>
    </dl>
    <p><span class="c6">-- Clear the <i>mged</i>
        display(s).</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><a href="#E"><span class=
                                               "c2">E</span></a> <b><span class="c2">region_1</span></b>
          <span class="c2"><br>
            -- <i>E</i> a single region.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>area</b><br>
            -- Calculate the presented area of the enclosing polygon of the
            region.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="arot" id=
                                            "arot"></a>arot</b> <i>x y z angle</i></span></dt>
      <dd class="c9"><span class="c16">The "arot" command performs a
          rotation about the specified axis (x y z) using screen units
          (-2048 to +2048). The amount of rotation is determined by
          angle, which is in degrees. Exactly what is rotated and how it
          is rotated are dependent on MGED�s state as well as the state
          of the display manager. For example, in normal viewing mode,
          this command simply rotates the view. However, in primitive
          edit mode, it rotates the shape being edited.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>arot 0 0 1
            10</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate 10 degrees about z axis.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="attach" id=
                                            "attach"></a>attach</b> [<i>-d display_string</i>] [<i>-i
            init_script</i>] [<i>-n name</i>] [<i>-t is_toplevel</i>]
          [<i>-W width</i>] [<i>-N height</i>] [<i>-S square_size</i>]
          win_type</span></dt>
      <dd class="c9"><span class="c6">The "attach" command is used to
          open a display window. The set of supported window types
          includes X and ogl. It should be noted that <i>attach</i> no
          longer releases previously attached display windows (i.e.,
          multiple attaches are supported). To destroy a display window,
          use the <a href="#release">release</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>attach
            ogl</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Open an ogl display window named
          .dm_ogl0 (assuming this is the first ogl display window opened
          using the default naming scheme).<br></span></p>
      <p><span class="c6"><tt>mged&gt; </tt><span class=
                                                  "c2"><b>attach ogl</b><br>
            -- Open a ogl display window named
            .dm_ogl1.<br></span></span></p>
      <p><span class="c6"><tt>mged&gt; </tt><span class=
                                                  "c2"><b>attach -n myOgl -W 720 -N 486 ogl</b><br>
            -- Open a 720x486 OpenGL display window named
            myOgl.<br></span></span></p>
      <p><span class="c6"><tt>mged&gt; </tt><span class=
                                                  "c2"><b>attach -n myX -d remote_host:0 -i myInit X</b><br>
            -- Open an X display window named myX on remote_host that is
            initialized by myInit.<br>
            -- myInit might contain user specified bindings like those
            found in the</span> <a href=""><span class="c2">default
              bindings</span></a><span class="c2">.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>toplevel .t</b><br>
            -- Create a toplevel window named .t.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>attach -t 0 -S 800 -n
              .t.ogl ogl</b><br>
            -- Open a 800x800 OpenGL display window named .t.ogl that is
            not a top-level window.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>button .t.dismiss -text
              Dismiss -command "release .t.ogl; destroy .t"</b><br>
            -- Create a button to dismiss the display manager
            etc.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>pack .t.ogl -expand 1
              -fill both</b><br>
            -- Pack the display manager inside .t.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>pack .t.dismiss</b><br>
            -- Pack the Dismiss button inside .t.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>attach</b><br>
            -- List the help message that includes the valid display
            types.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="bev" id=
                                            "bev"></a><a name="attr" id="attr"></a>attr</b>
          <i>get|set|rm|append|show object_name
            [arguments]</i></span></dt>
      <dd class="c9"><span class="c16">The "attr" command is used to
          create, change, retrieve, or view attributes of
          database</span></dd>
      <dd class="c9"><span class="c16">objects. The arguments for
          "set" and "append" subcommands are attribute name/value pairs.
          The arguments for "get, " "rm, " and "show" subcommands are
          attribute names. The "set" subcommand sets the specified
          attributes for the object. The "append" subcommand appends the
          provided value to an existing attribute, or creates a new
          attribute if it does not already exist. The "get" subcommand
          retrieves and displays the specified attributes. The "rm"
          subcommand deletes the specified attributes. The "show"
          subcommand does a "get" and displays the results in a user
          readable format. Note that the attribute names may not contain
          embedded white space, and if attribute values contain embedded
          white space, they must be surrounded by "{}" or double
          quotes.</span></dd>
      <dd></dd>
      <dd></dd>
      <dd class="c9"><span class="c16">Examples:</span></dd>
      <dd></dd>
      <dd class="c9"><span class="c16"><span class=
                                             "c13">mged&gt; </span><b>attr set region_1 comment {This is a
            comment for region_1}</b></span></dd>
      <dd class="c9"><span class="c18">-- Assign an attribute named
          "comment" to <i>region_1</i>, its value is "This is
          a</span></dd>
      <dd class="c9"><span class="c16">comment for
          region_1"</span></dd>
      <dd></dd>
      <dd></dd>
      <dd class="c9"><span class="c16"><span class=
                                             "c13">mged&gt; </span><b>attr show region_1
            comment</b></span></dd>
      <dd class="c9"><span class="c18">-- List all the attributes for
          <i>region_1</i></span></dd>
    </dl>

    <hr class="c3">
    <dt class="c8"><a name="autoview" id="autoview"></a><b>autoview</b></dt>
    <dd class="c9"><span class="c16">The "autoview" command resets
        the view size and the view center such that all displayed
        objects are within the view.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c16">Examples:</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c16"><span class=
                                           "c13">mged&gt; </span><b>autoview</b></span></dd>
    <dd class="c9"><span class="c18">-- Adjust the view to see
        everything displayed.</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c16"><b>bev</b> [-t] [-P#] new_obj
        Boolean_formula</span></dt>
    <dd class="c9"><span class="c16">The "bev" command performs the
        operations indicated in the Boolean_formula and stores the
        result in new_obj. The new_obj will be stored as an <a href=
                                                               "#NMG">NMG</a> shape (it may be converted to a <a href=
                                                                                                                 "#PG">polysolid</a> by using the <a href=
                                                                                                                                                     "#nmg_simplify">nmg_simplify</a> command). If the -t option is
        specified, then the resulting object will consist entirely of
        triangular facets. The default is to allow facets of any
        complexity, including holes. The -P option specifies the
        number of CPUs to use for the calculation (however, this is
        currently ignored). Only simple Boolean_formulas are
        allowed. No parentheses are allowed and the operations are
        performed from left to right with no precedence. More complex
        expressions must be expressed as BRL-CAD objects using
        the <a href="#r">r</a>,
        <a href="#g">g</a>, or <a href="#c">c</a> commands and
        evaluated using the <a href="#facetize">facetize</a> or
        <a href="#ev">ev</a> commands.</span></dd>
    <dt>Examples:</dt>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>bev -t
          triangulated_lens sphere1 + sphere2</b></span></dd>

    <p><span class="c6">-- Create a triangulated object by
        intersecting objects <i>sphere1</i> and
        <i>sphere2.</i></span></p>

    <hr class="c3">
    <dd class="c9"><span class="c6"><b><a name="bo" id=
                                          "bo"></a>bo</b> <i>[-o|-i pattern type] dest source</i>
    </span></dd>
    <dd class="c9"><span class="c6">The "bo" command is used to
        create or retrieve binary opaque objects. One of <i>-i</i> or
        <i>-o</i> must be specified.</span></dd>
    <dd class="c9"><span class="c6">The <i>-o</i> option "outputs"
        or extracts a binary object from the database object
        <i>source</i> to a file called <i>dest</i>.</span></dd>
    <dd class="c9"><span class="c6">The <i>-i</i> option "inputs"
        or imports a file called <i>source</i> into a binary object
        called <i>dest</i> in the database. There are two additional
        arguments that must be specified with the <i>-i</i> option:
        pattern and type. Currently, only uniform binary objects
        (arrays of values) are supported. As a result, the
        <i>pattern</i> is always <i>u</i> for "uniform" pattern. The
        <i>type</i> can be one of the following:</span></dd>
    <dd class="c9"><span class="c6"><i>f</i> -&gt;
        float</span></dd>
    <dd class="c9"><span class="c6"><i>d</i> -&gt;
        double</span></dd>
    <dd class="c9"><span class="c6"><i>c</i> -&gt; char (8
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>s</i> -&gt; short (16
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>i</i> -&gt; int (32
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>l</i> -&gt; long (64
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>C</i> -&gt; unsigned char (8
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>S</i> -&gt; unsigned short
        (16 bit)</span></dd>
    <dd class="c9"><span class="c6"><i>I</i> -&gt; unsigned int (32
        bit)</span></dd>
    <dd class="c9"><span class="c6"><i>L</i> -&gt; unsigned long
        (64 bit)</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>bo -i -u c
          cmds
          /usr/brlcad/html/manuals/mged/mged_cmd_index.html</b></span></dd>
    <dd class="c9"><span class="c6">-- Create an opaque uniform
        binary object of characters with the name <i>cmds</i> that
        contains the contents of the file
        <i>/usr/brlcad/html/manuals/mged/mged_cmd_index.html.</i></span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>bo -o
          /home/jim/cmds.html cmds</b></span></dd>
    <dd class="c9"><span class="c6">-- Copy the contents of the
        binary object named <i>cmds</i> into the file named
        <i>/home/jim/cmds.html.</i></span></dd>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="c" id="c"></a>
            <a name="bot_condense" id="bot_condense"></a>bot_condense</b> <i>new_bot_primitive
            old_bot_primitive</i></span></dt>
      <dd class="c9"><span class="c6">The "bot_condense" command is
          used to eliminate unused vertices from a BOT primitive. It
          returns the number of vertices eliminated.</span></dd>
      <dd></dd>
      <dd></dd>
      <dd class="c9"><span class="c12">Examples:</span></dd>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>bot_condense bot1_condensed bot1_original</b></span></dd>
      <dd class="c9"><span class="c12">-- Eliminate any unused
          vertices from the primitive named <i>bot1_original</i> and
          store the result in the new BOT primitive named
          <i>bot1_condensed.</i></span></dd>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name=
                                          "bot_decimate" id="bot_decimate"></a>bot_decimate</b> <i>�c
          maximum_chord_error �n maximum_normal_error �e
          minimum_edge_length new_bot_primitive
          old_bot_primitive</i></span></dt>
    <dd class="c9"><span class="c16">The "bot_decimate" command
        reduces the number of triangles in the old_bot_primitive and
        saves the results to the new_bot_primitive. The reduction is
        accomplished through an edge decimation algorithm. Only changes
        that do not violate the specified constraints are performed.
        The maximum_chord_error parameter specifies the maximum
        distance allowed between the original surface and the surface
        of the new BOT primitive in the current editing units. The
        maximum_normal_error specifies the maximum change in surface
        normal (degrees) between the old and new surfaces. The
        minimum_edge_length specifies the length of the longest edge
        that will be decimated. At least one constraint must be
        supplied. If more than one constraint is specified, then only
        operations that satisfy all the constraints are
        performed.</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c6">Examples:</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><span class=
                                          "c13">mged&gt; </span><b>bot_decimate -c 0.5 -n 10.0 bot.new
          abot</b></span></dd>
    <dd class="c9"><span class="c12">-- Create a new BOT primitive
        named <i>bot.new</i> by reducing the number of
        triangles</span></dd>
    <dd class="c9"><span class="c12">in <i>abot</i> while keeping
        the resulting surface within 0.5 units of the surface of
        <i>abot</i> and</span></dd>
    <dd class="c9"><span class="c12">keeping the surface normals
        within 10 degrees.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12">Note that the constraints
        specified only relate the output BOT primitive to the
        input</span></dd>
    <dd class="c9"><span class="c12">BOT primitive for a single
        invocation of the command. Repeated application of
        this</span></dd>
    <dd class="c9"><span class="c12">command on its own BOT output
        will result in a final BOT primitive that has</span></dd>
    <dd class="c9"><span class="c12">unknown relationships to the
        original BOT primitive. For example:</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12"><span class=
                                           "c13">mged&gt; </span>bot_decimate -c 10.0 bot_b
        bot_a</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12"><span class=
                                           "c13">mged&gt; </span>bot_decimate -c 10.0 bot_c
        bot_b</span></dd>
    <dd class="c9"><span class="c12">-- This sequence of commands
        will produce primitive "bot_c" with up to 20.0
        units</span></dd>
    <dd class="c9"><span class="c12">of chord error between "bot_a"
        and "bot_c".</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c12"><span class=
                                           "c13">mged&gt; </span>bot_decimate -c 10.0 bot_b
        bot_a</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12"><span class=
                                           "c13">mged&gt; </span>bot_decimate -n 5.0 bot_c
        bot_b</span></dd>
    <dd class="c9"><span class="c12">-- This sequence of commands
        will produce primitive "bot_c" with no guaranteed</span></dd>
    <dd class="c9"><span class="c12">relationships to
        "bot_a".</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="bot_face_fuse" id=
                                          "bot_face_fuse"></a>bot_face_fuse</b> <i>new_bot_primitive
          old_bot_primitive</i></span></dt>
    <dd class="c9"><span class="c6">The "bot_face_fuse" command is
        used to eliminate duplicate faces from a BOT solid. It returns
        the number of faces eliminated.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6">Examples:</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
        <b>bot_face_fuse bot1_fused bot1_original</b></span></dd>
    <dd class="c9"><span class="c12">-- Eliminate any duplicate
        faces from the primitive named <i>bot1_original</i> and store
        the result in the new BOT primitive named
        <i>bot1_fused.</i></span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name=
                                          "bot_face_sort" id="bot_face_sort"></a>bot_face_sort</b>
        <i>triangles_per_piece bot_primitive1 [bot_primitive2
          bot_primitive3 ...]</i></span></dt>
    <dd class="c9"><span class="c6">The "bot_face_sort" command is
        used to sort the list of triangles that constitutes the BOT
        primitive to optimize it for raytracing with the specified
        number of triangles per piece. Most BRL-CAD primitives are
        treated as a single object when a model is being prepared for
        raytracing, but BOT primitives are normally broken into
        "pieces" to improve performance. The raytracer normally uses
        four triangles per piece.</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c6">Examples:</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
        <b>bot_face_sort 4 bot1 bot2</b></span></dd>
    <dd class="c9"><span class="c12">-- Sort the faces of
        <i>bot1</i> and <i>bot2</i> to optimize them for raytracing
        with four triangles per piece.</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="bot_vertex_fuse"
                                          id="bot_vertex_fuse"></a>bot_vertex_fuse</b> <i>new_bot_solid
          old_bot_primitive</i> </span></dt>
    <dd class="c9"><span class="c12">The "bot_vertex_fuse" command
        is used to eliminate duplicate vertices from a BOT solid. It
        returns the number of vertices eliminated. No tolerance is
        used, so the vertices must match exactly to be considered
        duplicates.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12">Examples:</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
        bot_vertex_fuse bot1_fused bot1_original</span></dd>
    <dd class="c9"><span class="c12">-- Eliminate any duplicate
        vertices from the primitive named <i>bot1_original</i> and
        store the result in the new BOT primitive named
        <i>bot1_fused.</i></span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name=
                                          "build_region" id="build_region"></a>build_region</b> <i>[-a
          region_num] tag start_num end_num</i></span></dt>
    <dd class="c9"><span class="c6">The "build_region" command
        builds a region from existing solids that have specifically
        formatted names based on the provided tags and numbers. The
        created region will be named "tag.rx", where "x" is the first
        number (starting from 1) that produces an unused region name.
        If the <i>-a</i> option is used, then the specified
        "region_num" will be used for "x." If that region already
        exists, this operation will append to it. If that region does
        not exist, a new one will be created. The solids that will be
        involved in this operation are those with names of the form
        "tag.s#" or "tag.s#o@", where "#" is a number between
        <i>start_num</i> and <i>end_num</i> inclusive, "o" is either
        "u", "-", or "+", and "@" is any number. The operators and
        numbers coded into the solid names are used to build the
        region.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6">Examples:</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
        <b>build_region abc 1 2</b></span></dd>
    <dd class="c9"><span class="c12">-- Creates a region named
        "abc.r1" consisting of:</span></dd>
    <dd class="c9"><span class="c12">u abc.s1</span></dd>
    <dd class="c9"><span class="c12">u abc.s2</span></dd>
    <dd class="c9"><span class="c12">+ abc.s2+1</span></dd>
    <dd class="c9"><span class="c12">- abc.s2-1</span></dd>
    <dd class="c9"><span class="c12">provided that the above shapes
        already exist in the database.</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b>c</b> [<i>-c|r</i>]
        <i>combination_name</i> [<i>Boolean_expression</i>]</span></dt>
    <dd class="c9"><span class="c6">The "c" command creates a
        <i>BRL-CAD</i> combination with the name
        <i>combination_name</i>. The <i>-r</i> option indicates that
        the combination is a <i>BRL-CAD</i> region. The <i>-c</i>
        option is the default and indicates that the combination is not
        a region. The <i>Boolean_expression</i> allows parentheses.
        Where no order is specified, intersections are performed before
        subtractions or unions; then subtractions and unions are
        performed, left to right. Where there is no
        <i>Boolean_expression</i> and <i>combination_name</i>, a new
        empty combination will be created. If no
        <i>Boolean_expression</i> is provided, and
        <i>combination_name</i> does already exist and one of <i>-c</i>
        or <i>-r</i> is specified, then <i>combination_name</i> is
        flagged to agree with the indicated option. If a new
        <i>region</i> is created or an existing combination is flagged
        as a region with this command, its region-specific attributes
        will be set according to the current defaults (see <a href=
                                                              "#regdef">regdef</a>). The <a href="#comb">comb</a> and
        <a href="#r">r</a> commands may also be used to create
        combinations.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>c -c abc
          (a u b) - (a + d)</b></span></dd>

    <p><span class="c6">-- Create a combination named <i>abc</i>
        according to the formula <i>(a u b) - (a + d).</i></span></p>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="cat" id=
                                          "cat"></a>cat</b> <i>&lt;objects</i>&gt;</span></dt>
    <dd class="c9"><span class="c6">The "cat" command displays a
        brief description of each item in the list of <i>objects</i>.
        If the item is a primitive shape, the type of shape and its
        vertex are displayed. If the item is a combination, the Boolean
        formula for that combination�including operands, operators, and
        parentheses�is displayed. If the combination is flagged as a
        region, then that fact is also displayed along with the
        region�s ident code, air code, los, and GIFT material
        code.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>cat
          region_1 region_2</b></span></dd>

    <p><span class="c6">-- Display the Boolean formulas for some
        regions.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="center" id=
                                            "center"></a>center</b> <i>[x y z]</i></span></dt>
      <dd class="c9"><span class="c16">The "center" command positions
          the center of the mged viewing cube at the specified model
          coordinates. This is accomplished by moving the eye position
          while not changing the viewing direction. (The <a href=
                                                            "#lookat">lookat</a> command performs a related function by
          changing the viewing direction, but not moving the eye
          location.) The coordinates are expected in the current editing
          units. In case the coordinates are the result of evaluating a
          formula, they are echoed back. If no coordinates are provided,
          the current center coordinates (in current editing units, not
          mm) are printed and can be used in subsequent
          calculations.</span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">It is often convenient to use the center of
          the view when visually selecting key locations in the model for
          construction or animation because of (1) the visible centering
          dot on the screen, (2) the fact that zoom and rotation are
          performed with respect to the view center, (3) the default
          center-mouse behavior is to move the indicated point to the
          view center, and (4) the angle/distance cursors are centered by
          default. This command provides the means to set and retrieve
          those values numerically.</span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>center</b></span></dd>
    </dl>
    <p><span class="c6">-- Print out the coordinates of the center of
        the <i>mged</i> display.</span></p>
    <p><span class="c6">&nbsp;</span></p>
    <dl>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>center
            12.5 5.6 8.7</b></span></dd>
    </dl>
    <p><span class="c6">-- Move the center of the <i>mged</i> display
        to the point (12.5, 5.6, 8.7).</span></p>
    <p><span class="c6">&nbsp;</span></p>
    <dl>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>set
            oldcent [center]</b><br>
          -- Set the Tcl variable $oldcent to the display center
          coordinates.</span></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>set
            glob_compat_mode 0</b></span></dd>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>units
          mm</span></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>eval
            center [vadd2 [center] {2 0 0}]</b><br>
          -- Move the center point two mm in the model + <i>x</i>
          direction.</span></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>units
            mm</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c14">db adjust sphere.s V
            [center]</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="check" id=
                                            "check"></a>check</b>
          {<i>subcommand</i>}[<i>options</i>][<i>objects...</i>]</span></dt>
      <dd class="c9"><span class="c6">The "check" command computes
          and reports a variety of characteristics of the objects
          specified from the opened database. The characteristics which
          can be computed include <i>mass, centroid, moments of inertia,
            volume, overlaps, surface area, exposed air, gaps/voids,
            adjacent air and unconfined air</i>. Only the objects from the
          database specified on the command line are analyzed. The
          following are the sub-commands offered:</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">adj_air</span></dt>
      <dd class="c9"><span class="c12">Detects air volumes which are
          next to each other but have different air_code values applied
          to the region.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">centroid</span></dt>
      <dd class="c9"><span class="c6">Computes the centroid of the
          objects specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">exp_air</span></dt>
      <dd class="c9"><span class="c6">Check if the ray encounters air
          regions before (or after all) solid objects.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">gap</span></dt>
      <dd class="c9"><span class="c6">This reports when there is more
          than overlap tolerance distance between objects on the ray
          path.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">mass</span></dt>
      <dd class="c9"><span class="c6">Computes the mass of the
          objects specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">moments</span></dt>
      <dd class="c9"><span class="c6">Computes the moments and
          products of inertia of the objects specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">overlaps</span></dt>
      <dd class="c9"><span class="c6">This reports overlaps, when two
          regions occupy the same space.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">surf_area</span></dt>
      <dd class="c9"><span class="c6">Computes the surface area of
          the objects specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">unconf_air</span></dt>
      <dd class="c9"><span class="c6">This reports when there are
          unconfined air regions.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">volume</span></dt>
      <dd class="c9"><span class="c6">Computes the volume of the
          objects specified.</span></dd>
      <dt class="c8"><span class="c6">The following are the options
          offered by the check command:</span></dt>
      <dd>
        <ul>
          <li><span class="c6"><i>a #[deg|rad]</i> -- Select azimuth
              in degrees with an implicit <i>"deg"</i> suffix and in
              radians with an explicit <i>"rad"</i> suffix. Used with -e.
              Default value is 35 degrees.</span></li>
          <li><span class="c6"><i>e #[deg|rad]</i> -- Select
              elevation in degrees with an implicit <i>"deg"</i> suffix
              and in radians with an explicit <i>"rad"</i> suffix.Used
              with -a. Default value is 25 degrees.</span></li>
          <li><span class="c6"><i>d</i> -- Set debug
              flag.</span></li>
          <li><span class="c6"><i>f filename</i> -- Specifies that
              density values should be taken from an external file
              instead of from the _DENSITIES object in the
              database.</span></li>
          <li><span class="c6"><i>g
                [initial_grid_spacing-]grid_spacing_limit or
                [initial_grid_spacing, ]grid_spacing_limit</i> -- Specifies
              a limit on how far the grid can be refined and optionally
              the initial spacing between rays in the grids.</span></li>
          <li><span class="c6"><i>-G [grid_width, ]grid_height</i> --
              sets the grid size, if only grid width is mentioned then a
              square grid size is set.</span></li>
          <li><span class="c6"><i>i</i> -- gets 'view information'
              from the view to setup eye position.</span></li>
          <li><span class="c6"><i>M #</i> --Specifies a mass
              tolerance value.</span></li>
          <li><span class="c6"><i>n #</i> -- Specifies that the grid
              be refined until each region has at least num_hits ray
              intersections.</span></li>
          <li><span class="c6"><i>N #</i> -- Specifies that only the
              first num_views should be computed.</span></li>
          <li><span class="c6"><i>o</i> -- Specifies to display the
              overlaps as overlays.</span></li>
          <li><span class="c6"><i>p</i> -- Specifies to produce plot
              files for each of the analyses it performs.</span></li>
          <li><span class="c6"><i>P #</i> -- Specifies that ncpu CPUs
              should be used for performing the calculation. By default,
              all local CPUs are utilized.</span></li>
          <li><span class="c6"><i>q</i> -- Quiets (suppresses) the
              'was not hit' reporting.</span></li>
          <li><span class="c6"><i>r</i> -- Indicates to print
              per-region statistics for mass/volume/surf_area as well as
              the values for the objects specified.</span></li>
          <li><span class="c6"><i>R</i> -- Disable reporting of
              overlaps.</span></li>
          <li><span class="c6"><i>s #</i> -- Specifies surface area
              tolerance value.</span></li>
          <li><span class="c6"><i>S #</i> -- Specifies that the grid
              spacing will be initially refined so that at least
              samples_per_axis_min will be shot along each axis of the
              bounding box of the model.</span></li>
          <li><span class="c6"><i>t #</i> -- Sets the tolerance for
              computing overlaps.</span></li>
          <li><span class="c6"><i>u
                distance_units, volume_units, mass_units</i> -- Specify the
              units used when reporting values.</span></li>
          <li><span class="c6"><i>U #</i> -- Specifies the Boolean
              value (0 or 1) for use_air which indicates whether regions
              which are marked as 'air' should be retained and included
              in the raytrace.</span></li>
          <li><span class="c6"><i>v</i> -- Set verbose
              flag.</span></li>
          <li><span class="c6"><i>V #</i> -- Specifies a volumetric
              tolerance value.</span></li>
        </ul>
      </dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>check
            overlaps -g10, 10 box</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Run the <i>check</i> command with rays
          fired from a uniform grid with the rays spaced every 10 mm, and
          reports any overlaps seen while raytracing.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="color" id=
                                            "color"></a>color</b> <i>low high r g b str</i></span></dt>
      <dd class="c9"><span class="c16">The "color" command creates an
          entry in the database that functions as part of a color lookup
          table for displayed regions. The ident number for the region is
          used to find the appropriate color from the lookup table. The
          low and high values are the limits of region ident numbers to
          have the indicated rgb color (0-255) applied. The str parameter
          is intended to be an identifying character string, but is
          currently ignored. The current list of color table entries may
          be displayed with the <a href="#prcolor">prcolor</a> command,
          and the entire color table may be edited using the <a href=
                                                                "#edcolor">edcolor</a> command. If a color lookup table exists,
          its entries will override any color assigned using the <a href=
                                                                    "#mater">mater</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>color 1100
            1200 255 0 0 fake_string</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Make an entry in the color lookup table
          for regions with idents from 1100 to 1200 using the color
          red.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="comb" id=
                                            "comb"></a>comb</b> <i>combination_name &lt;operation
            object</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "comb" command creates a
          new combination or extends an existing one. If
          <i>combination_name</i> does not already exist, then it will be
          created using the indicated list of <i>operations</i> and
          <i>objects</i>. If it does exist, the list of <i>operations</i>
          and <i>objects</i> will be appended to the end of the existing
          combination. The <i>&lt;operation object</i>&gt; list is
          expected to be in the same form as used in the <a href=
                                                            "#r">r</a> command. The <a href="#c">c</a> command may also be
          used to create a <i>combination</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>comb abc u
            a - b + c</b></span></dd>
    </dl>
    <p><span class="c6">-- Create combination abc as ((a - b) +
        c).</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="comb_color" id=
                                            "comb_color"></a>comb_color</b> <i>combination_name r g
            b</i></span></dt>
      <dd class="c9"><span class="c16">The "comb_color" command
          assigns the color rgb (0-255) to the existing combination named
          combination_name.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>comb_color
            region1 0 255 0</b></span></dd>
    </dl>
    <p><span class="c6">-- Assign the color green to
        <i>region1.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="copyeval" id=
                                            "copyeval"></a>copyeval</b> <i>new_primitive path_to_old_
            primitive</i></span></dt>
      <dd class="c9"><span class="c16">Objects in a BRL-CAD model are
          stored as Boolean trees (combinations), with the members being
          primitive shapes or other Boolean trees. Each member has a
          transformation matrix associated with it. This arrangement
          allows a primitive to be a member of a combination, and that
          combination may be a member of another combination, and so on.
          When a combination is displayed, the transformation matrices
          are applied to its members and passed down through the
          combinations to the leaf (primitive shape) level. The
          accumulated transformation matrix is then applied to the
          primitive before it is drawn on the screen. The "copyeval"
          command creates a new primitive object called new_ primitive by
          applying the transformation matrices accumulated along the
          path_to_old_primitive to the leaf primitive shape object at the
          end of the path and saving the result under the name new_
          primitive. The path_to_old_ primitive must be a legitimate path
          ending with a primitive shape.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>copyeval
            shapeb comb1/comb2/comb3/shapea</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Create <i>shapeb</i> from <i>shapea</i>
          by applying the accumulated transformation matrices from the
          path comb1/comb2/comb3.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="copymat" id=
                                            "copymat"></a>copymat</b> <i>comb1/memb1
            comb2/memb2</i></span></dt>
      <dd class="c9"><span class="c16">The "copymat" command copies
          the transformation matrix from a member of one combination to
          the member of another.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt><b>copymat
            comb1/memb1 comb2/memb2</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c16">-- Set the matrix for member <i>memb2</i>
          in combination <i>comb2</i> equal to the matrix for member
          <i>memb1</i> in combination <i>comb1.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="cp" id=
                                            "cp"></a>cp</b> <i>from_object to_object</i></span></dt>
      <dd class="c9"><span class="c16">The "cp" command makes a
          duplicate of an object (shape or combination). If from_object
          is a shape, then it is simply copied to a new shape named
          to_object. If from_object is a combination, then a new
          combination is created that contains exactly the same members,
          transformation matrices, etc., and it is named
          to_object.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>cp comb1
            comb2</b></span></dd>
    </dl>
    <p><span class="c6">-- Make a duplicate of combination
        <i>comb1</i> and call it <i>comb2.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="cpi" id=
                                            "cpi"></a>cpi</b> <i>old_tgc new_tgc</i></span></dt>
      <dd class="c9"><span class="c16">The "cpi" command copies
          old_tgc (an existing <a href="#TGC">TGC</a> shape) to a new TGC
          shape (new_tgc), positions the new TGC such that its base
          vertex is coincident with the center of the top of old_tgc, and
          puts mged into the primitive edit state with new_tgc selected
          for editing. This command was typically used in creating models
          of wiring or piping runs; however, a <a href="#PIPE">pipe</a>
          primitive has since been added to BRL-CAD to handle such
          requirements.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>cpi tgc_a
            tgc_b</b></span></dd>
    </dl>
    <p><span class="c6">-- Copy <i>tgc_a</i> to <i>tgc_b</i> and
        translate <i>tgc_b</i> to the end of <i>tgc_a.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="d" id="d"></a>d</b>
          <i>&lt;objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "d" command deletes the
          specified list of objects from the <i>mged</i> display. This is
          a synonym for the <a href="#erase">erase</a> command. Only
          objects that have been explicitly displayed may be deleted with
          the "d" command (use the <a href="#who">who</a> command to see
          a list of explicitly displayed objects). Objects that are
          displayed as members of explicitly displayed combinations
          cannot be deleted from the display with this command (see
          <a href="#erase">erase -r</a>). Note that this has no effect on
          the <i>BRL-CAD</i> database itself. To actually remove objects
          from the database, use the <a href="#kill">kill</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>d region1
            shapea</b></span></dd>
    </dl>
    <p><span class="c6">-- Delete <i>region1</i> and <i>shapea</i>
        from the <i>mged</i> display.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="db" id=
                                            "db"></a>db</b> <i>command</i> [<i>args...</i>]</span></dt>
      <dd class="c9"><span class="c6">The "db" command provides an
          interface to a number of database manipulation routines. Note
          that this command always operates in units of millimeters. The
          <i>command</i> must be one of the following with appropriate
          arguments:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><i><span class="c2">match
              &lt;regular_exp</span></i><span class="c2">&gt;<br>
            -- Return a list of all objects in that database that match the
            list of regular expressions.</span></span></li>
      <li><span class="c6"><i>get shape_or_path [attribute]</i><br>
          -- Return information about the primitive shape at the end of
          the <i>shape_or_path</i>. If a path is specified, the
          transformation matrices encountered along that path will be
          accumulated and applied to the leaf shape before displaying the
          information. If no <i>attribute</i> is specified, all the
          details about the shape are returned. If a specific
          <i>attribute</i> is listed, then only that information is
          returned.</span></li>
      <li><span class="c6"><i>put shape_name shape_type
            attributes</i><br>
          -- Create shape named <i>shape_name</i> of type
          <i>shape_type</i> with attributes as listed in
          <i>attributes</i>. The arguments to the <i>put</i> command are
          the same as those returned by the <i>get</i>
          command.</span></li>
      <li><span class="c6"><i>adjust shape_name attribute new_value1
            [new_value2 new_value3...]</i><br>
          -- Modify the shape named <i>shape_name</i> by adjusting the
          value of its <i>attribute</i> to the
          <i>new_values</i>.</span></li>
      <li><span class="c6"><i>form object_type</i><br>
          -- Display the format used to display objects of type
          <i>object_type</i>.</span></li>
      <li><span class="c6"><i>tops</i><br>
          -- Return all top-level objects.</span></li>
      <li><span class="c6"><i>close</i><br>
          -- Close the previously opened database and delete the
          associated command.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>db match
            *.s</b></span></dd>
    </dl>
    <p><span class="c6">-- Get a list of all objects in the database
        that end with ".s".</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>db get cone.s</b><br>
            -- Get a list of all the attributes and their values for shape
            <i>cone.s</i>.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>db get cone.s V</b><br>
            -- Get the value of the <i>V</i> (vertex) attribute of shape
            <i>cone.s</i>.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>db put new_cone.s tgc V
              {0 0 0} H {0 0 1} A {1 0 0} B {0 1 0} C {5 0 0} D {0 5
              0}</b><br>
            -- Create a new</span> <a href="#TGC"><span class=
                                                        "c2">TGC</span></a> <span class="c2">shape named
            <i>new_cone.s</i> with the specified
            attributes.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>db adjust new_cone.s V {0
              0 10}</b><br>
            -- Adjust the <i>V</i> (vertex) attribute of <i>new_cone.s</i>
            to the value {0 0 10}.</span></span></p>
      <p><span class="c6"><span class="c2"><br>
            mged <b>db form tgc</b><br>
            -- Display the format used by the <i>get</i> and <i>put</i>
            commands for the</span> <a href="#TGC"><span class=
                                                         "c2">TGC</span></a> <span class="c2">shape
            type.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><a name="db_glob" id=
                                         "db_glob"></a> </span></dt>
      <dt class="c8"><span class="c6"><b>db_glob</b>
          <i>cmd_string</i></span></dt>
      <dd class="c9"><span class="c16">Globs cmd_string against the
          MGED database resulting in an expanded command
          string.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>db_glob "l
            r23\[0-9\]"</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><br>
          l r230 r231 r232 r233 r234 r235 r236 r237 r238 r239<br>
          -- Returns a command string to list objects r230 through
          r239.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="dbconcat" id=
                                            "dbconcat"></a>dbconcat</b> <i>[-s/-p] [-t] [-u] [-c]</i>
          <i>database_file</i> [<i>affix</i>]</span></dt>
      <dd>
        <p><span class="c6">The "dbconcat" command concatenates an
            existing <i>BRL-CAD</i> database to the database currently
            being edited. If an <i>affix</i> is supplied, then all
            objects from the <i>database_file</i> will have that
            <i>affix</i> added to their names. The <i>-s</i> option
            indicates that the <i>affix</i> is a suffix, while the
            <i>-p</i> option (default) indicates that the <i>affix</i> is
            a prefix. Note that each <i>BRL-CAD</i> object must have a
            unique name, so care must be taken not to "dbconcat" a
            database that has objects with names the same as objects in
            the current database. The <a href="#dup">dup</a> command may
            be used to check for duplicate names. If the <i>dup</i>
            command finds duplicate names, use the <i>prefix</i> option
            to both the <i>dup</i> and <i>dbconcat</i> commands to find a
            <i>prefix</i> that produces no duplicates. If duplicate names
            are encountered during the "dbconcat" process, and no
            <i>affix</i> is supplied, computer-generated prefixes will be
            added to the object names coming from the
            <i>database_file</i> (but member names appearing in
            combinations will not be modified, so this is a dangerous
            practice and should be avoided). If the <i>-t</i> option is
            specified, then the title of the <i>database_file</i> will
            become the new title of the current <i>BRL-CAD</i> database.
            If the <i>-u</i> option is specified, the units of the
            current database will be set to that of the
            <i>database_file</i> being concatted. The <i>-c</i> option
            specifies that the region color table in the concatted
            <i>database_file</i> should replace any region color table in
            the current <i>BRL-CAD</i> database.</span></p>
      </dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>dbconcat
            model_two.g two_</b></span></dd>
      <dd>
        <p><span class="c6">-- Copy all the objects in
            <i>model_two.g</i> to the current database, but prefix the
            name of every object copied with the string
            <i>two_</i>.</span></p>
      </dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>dbconcat
            -s model_two.g</b></span></dd>
      <dd>
        <p><span class="c6">-- Copy all the objects in
            <i>model_two.g</i> to the current database, adding
            computer-generated suffixes as required.</span></p>
      </dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>dbconcat
            -c -p model_two.g two_</b></span></dd>
      <dd>
        <p><span class="c6">-- Copy all the objects in
            <i>model_two.g</i> to the current database, adding the prefix
            <i>two_</i> to every object copied from <i>model_two.g</i>.
            The region color table from <i>model_two.g</i> is copied to
            the current database, and any region color table that had
            existed in the current database is deleted.</span></p>
      </dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="debugbu" id=
                                            "debugbu"></a>debugbu</b> [<i>hex_code</i>]</span></dt>
      <dd class="c9"><span class="c6">The "debugbu" command allows
          the user to set or check the debug flags used by <i>libbu</i>.
          With no arguments, the <i>debugbu</i> command displays all the
          possible settings for the <i>bu_debug</i> flag and the current
          value. When a <i>hex_code</i> is supplied, that value is used
          as the new value for <i>bu_debug</i>. Similar debug commands
          for other <i>BRL-CAD</i> libraries are <a href=
                                                    "#debuglib">debuglib</a> for <i>librt</i> and <a href=
                                                                                                     "#debugnmg">debugnmg</a> for the <a href="#NMG">NMG</a> portion
          of <i>librt</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>debugbu</b></span></dd>
      <dd>
        <p><span class="c12">-- Get a list of available
            <i>bu_debug</i> values and the current value.</span></p>
      </dd>
    </dl>
    <div class="c7">
      <span class="c12"><span class="c2"><br></span><tt>mged&gt; </tt>
        <span class="c14">debugbu 2</span></span>
      <p><span class="c12">-- Set <i>bu_debug</i> to
          &lt;MEM_CHECK&gt;.</span></p>
      <p><span class="c12">&nbsp;</span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6"><a name="debugdir" id=
                                         "debugdir"></a></span></dt>
      <dd>
        <hr class="c3">
      </dd>
      <dt>debugdir</dt>
      <dd class="c9"><span class="c12">The "debugdir" command
          displays a dump of the in-memory directory for the current
          database file. The information listed for each directory entry
          includes:</span></dd>
    </dl>
    <ul>
      <li><span class="c12">memory address of the directory
          structure.</span></li>
      <li><span class="c12">name of the object.</span></li>
      <li><span class="c12">"d_addr" for objects on disk, or "ptr"
          for objects in memory.</span></li>
      <li><span class="c12">"SOL, " "REG, " or "COM" if the object is a
          shape, region, or combination, respectively.</span></li>
      <li><span class="c12">file offset (for objects on disk) or
          memory pointer (for objects in memory).</span></li>
      <li><span class="c12">number of instances referencing this
          object (not normally filled in).</span></li>
      <li><span class="c12">number of database granules used by this
          object.</span></li>
      <li><span class="c12">number of times this object is used as a
          member in combinations (not normally filled in).</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>debugdir</b></span></dd>
    </dl>
    <p><span class="c12">-- Get a dump of the in-memory
        directory.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="debuglib" id=
                                            "debuglib"></a>debuglib</b> [<i>hex_code</i>]</span></dt>
      <dd class="c9"><span class="c6">The "debuglib" command allows
          the user to set or check the debug flags used by <i>librt</i>.
          With no arguments, the <i>debuglib</i> command displays all the
          possible settings for the <i>librt</i> debug flag and the
          current value. When a <i>hex_code</i> is supplied, that value
          is used as the new value for the flag. Similar debug commands
          for other <i>BRL-CAD</i> libraries are <a href=
                                                    "#debugbu">debugbu</a> for <i>libbu</i> and <a href=
                                                                                                   "#debugnmg">debugnmg</a> for the <a href="#NMG">NMG</a> portion
          of <i>librt</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>debuglib</b></span></dd>
    </dl>
    <p><span class="c6">-- Get a list of available debug values for
        <i>librt</i> and the current value.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>debuglib 1</b><br>
            -- Set the <i>librt</i> debug flag to &lt;DEBUG_ALLRAYS&gt;
            (print info about rays).</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="debugnmg" id=
                                            "debugnmg"></a>debugnmg</b> [<i>hex_code</i>]</span></dt>
      <dd class="c9"><span class="c6">The "debugnmg" command with no
          options displays a list of all possible debug flags available
          for <a href="#NMG">NMG</a> processing. If the command is
          invoked with a hex number argument, that value is used as the
          new value for the <i>NMG</i> debug flag. Similar debug commands
          for other <i>BRL-CAD</i> libraries are <a href=
                                                    "#debuglib">debuglib</a> for <i>librt</i> and <a href=
                                                                                                     "#debugbu">debugbu</a> for <i>libbu</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>debugnmg
            100</b></span></dd>
    </dl>
    <p><span class="c6">-- Set the <i>NMG</i> debug flag to get
        details on the classification process.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="decompose" id=
                                            "decompose"></a>decompose</b> <i>NMG_shape</i>
          [<i>prefix</i>]</span></dt>
      <dd class="c9"><span class="c6">The "decompose" command
          processes an <a href="#NMG">NMG</a> shape and produces a series
          of new <i>NMG</i> shapes consisting of each maximally connected
          shell in the original <i>NMG</i> shape. If an optional prefix
          is supplied, the resulting <i>NMG</i> shapes will be named by
          using the prefix and adding an underscore character and a
          number to make the name unique. If no prefix is supplied, the
          default prefix "sh" will be used.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>decompose
            shape.nmg part</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Decompose the <i>NMG</i> shape named
          <i>shape.nmg</i> into maximally connected shells and put each
          resulting shell into a separate <i>NMG</i> shape named
          <i>part_1</i>, <i>part_2</i>, ....</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="delay" id=
                                            "delay"></a>delay</b> <i>seconds microseconds</i></span></dt>
      <dd class="c9"><span class="c16">The "delay" command provides a
          delay of the specified time before the next command will be
          processed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt><b>delay 5
            0</b></span></dd>
    </dl>
    <p><span class="c16">-- Delay for 5 seconds.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="dm" id=
                                             "dm"></a>dm</b> <i>subcommand</i> [<i>args</i>]</span></dt>
      <dd class="c9"><span class="c6">The "dm" command provides a
          means to interact with the display manager at a lower level.
          The <i>dm</i> command accepts the following
          subcommands:</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>set</b> [<i>var</i>
          [<i>val</i>]]</span></dt>
      <dd class="c9"><span class="c6">The "set" subcommand provides a
          means to set or query display manager-specific variables.
          Invoked without any arguments, the <i>set</i> subcommand will
          return a list of all available internal display manager
          variables. If only the <i>var</i> argument is specified, the
          value of that variable is returned. If both <i>var</i> and
          <i>val</i> are given, then <i>var</i> will be set to
          <i>val</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>size</b> [<i>width
            height</i>]</span></dt>
      <dd class="c9"><span class="c6">The "size" subcommand provides
          a means to set or query the window size. If no arguments are
          given, the display manager�s window size is returned. If
          <i>width</i> and <i>height</i> are specified, the display
          manager makes a request to have its window resized. Note that a
          size request is just that, a request, so it may be ignored,
          especially if the user has resized the window using the
          mouse.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>m</b> <i>button</i> <i>x
            y</i></span></dt>
      <dd class="c9"><span class="c16">The "m" subcommand is used to
          simulate an <a href="#M">M</a> command. The button argument
          determines which mouse button is being used to trigger a call
          to this command. This value is used in the event handler to
          effect dragging the faceplate scrollbars. The x and y arguments
          are in X screen coordinates, which are converted to MGED screen
          coordinates before being passed to the <a href="#M">M</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>am</b> &lt;<i>r</i> |
          <i>t</i> | <i>s</i>&gt; <i>x y</i></span></dt>
      <dd class="c9"><span class="c16">The "am" subcommand effects
          mged�s alternate mouse mode. The alternate mouse mode gives the
          user a different way of manipulating the view or an object. For
          example, the user can drag an object or perhaps rotate the view
          while using the mouse. The first argument indicates the type of
          operation to perform (i.e., r for rotation, t for translation,
          and s for scale). The x and y arguments are in X screen
          coordinates and are transformed appropriately before being
          passed to the <a href="#knob">knob</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>adc</b> &lt;<i>1</i> |
          <i>2</i> | <i>t</i> | <i>d</i>&gt; <i>x y</i></span></dt>
      <dd class="c9"><span class="c16">The "adc" subcommand provides
          a way of manipulating the angle distance cursor while using the
          mouse. The first argument indicates the type of operation to
          perform (i.e., 1 for angle 1, 2 for angle 2, t for translate,
          and d for tick distance). The x and y arguments are in X screen
          coordinates and are transformed appropriately before being
          passed to the <a href="#adc">adc</a> command (i.e., not "dm
          adc").</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>con</b> &lt;<i>r</i> |
          <i>t</i> | <i>s</i> &lt;<i>x</i> | <i>y</i> | <i>z</i>&gt;
          <i>xpos ypos</i></span></dt>
      <dd class="c9"><span class="c16">This form of the "con"
          subcommand provides a way to effect constrained manipulation of
          the view or an object while using the mouse. This simulates the
          behavior of sliders without taking up screen real estate. The
          first argument indicates the type of operation to perform
          (i.e., r for rotation, t for translation, and s for scale). The
          &lt;x | y | z&gt; argument is the axis of rotation,
          translation, or scale. The xpos and ypos arguments are in X
          screen coordinates and are transformed appropriately before
          being passed to the <a href="#knob">knob</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>con</b> <i>a</i>
          &lt;<i>x</i> | <i>y</i> | <i>1</i> | <i>2</i> | <i>d</i>&gt;
          <i>xpos ypos</i></span></dt>
      <dd class="c9"><span class="c16">This form of the "con"
          subcommand provides a way to effect constrained manipulation of
          the angle distance cursor while using the mouse. This simulates
          the behavior of sliders without taking up screen real estate.
          The first argument indicates that this is to be applied to the
          angle distance cursor. The next argument indicates the type of
          operation to perform (i.e., x for translate in the x direction,
          y for translate in the y direction, 1 for angle 1, 2 for angle
          2, and d for tick distance). The xpos and ypos arguments are in
          x screen coordinates and are transformed appropriately before
          being passed to the <a href="#knob">knob</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>dm
            set</b></span></dd>
    </dl>
    <p><span class="c6">-- Get a list of the available display
        manager internal variables.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm set perspective
              1</b><br>
            -- Turn on perspective projection in the
            display.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm size</b><br>
            -- Return the size to the display
            manager.<br></span></span></p>
      <p><span class="c6"><tt>mged&gt; </tt><span class="c2"><b>dm
              size 900 900</b><br>
            -- Request that the display manager window be resized to
            900x900.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm m 2 100 200</b><br>
            -- Simulate a button2 press at (100, 200) in X screen
            coordinates.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm am r 400 100</b><br>
            -- Start an alternate mouse mode rotation.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm adc d 300 200</b><br>
            -- Start a tick distance manipulation.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm con t z 200
              200</b><br>
            -- Start a constrained translation down the Z
            axis.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm con a d 200
              100</b><br>
            -- Start a constrained tick distance
            manipulation.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>dm idle</b><br>
            -- End drag.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="draw" id=
                                            "draw"></a>draw</b> [<i>-R -A -s -o -C#/#/#</i>] &lt;<i>objects
            | attribute name/value pairs</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">Add &lt;<i>objects</i>&gt; to
          the display list so that they will appear on the <i>MGED</i>
          display. The <a href="#e">e</a> command is a synonym for
          <i>draw</i>.</span></dd>
    </dl>
    <ul>
      <li><span class="c6">The <i>-C</i> option provides the user a
          way to specify a color that overrides all other color
          specifications including combination colors and region-id-based
          colors.</span></li>
      <li><span class="c6">The <i>-s</i> option specifies that
          subtracted and intersected objects should be drawn with shape
          lines rather than dot-dash lines.</span></li>
      <li><span class="c6">The <i>-A</i> option specifies that the
          arguments provided to this command are attribute name/value
          pairs, and only objects having the specified attributes and
          values are to be displayed. The default (without <i>-o</i>) is
          that only objects having all the specified attribute name/value
          pairs will be displayed.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>draw
            object1 object2</b></span></dd>
    </dl>
    <p><span class="c6">-- Draw <i>object1</i> and <i>object2</i> in
        the <i>MGED</i> display.</span></p>
    <p><span class="c6"><span class="c20">mged&gt; </span>
        <span class="c14">draw -C 255/255/255 object2</span></span></p>
    <p><span class="c6">-- Draw <i>object2</i> in white.</span></p>
    <p><span class="c6"><span class="c13">mged&gt; </span>
        <span class="c14">draw -A -o Comment {First comment} Comment
          {Second comment}</span></span></p>
    <div class="c7">
      <p><span class="c6"><b>--</b> Draw objects that have a
          "Comment" attribute with a value of either "First comment" or
          "Second comment."</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="dup" id=
                                            "dup"></a>dup</b> <i>file</i> [<i>prefix</i>]</span></dt>
      <dd class="c9"><span class="c6">The "dup" command checks the
          specified <i>file</i> (which is expected to contain a
          <i>BRL-CAD</i> model) for names that are the same as those in
          the current model. If a <i>prefix</i> is included on the
          command line, all names in the specified <i>file</i> will have
          that <i>prefix</i> added to their names before comparison with
          the current model. This command is often used prior to invoking
          the <a href="#dbconcat">dbconcat</a> command to ensure that
          there are no name clashes.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>dup
            other_model.g</b></span></dd>
    </dl>
    <p><span class="c6">-- Check <i>other_model.g</i> for names
        duplicating those in the current model.<br></span></p>
    <div class="c7">
      <p><span class="c6"><tt>mged&gt; </tt><span class="c2"><b>dup
              other_model.g abc</b><br>
            -- Do the same check as above, but prefix all the names in
            <i>other_model.g</i> with <i>abc</i> before comparing with the
            names in the current model.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="e" id="e"></a>e</b>
          [<i>-R -A -o -s -C#/#/#</i>] &lt;<i>objects| attribute
            name/value pairs</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "e" command adds the
          objects in the argument list to the display list so that they
          will appear on the <i>MGED</i> display. This is a synonym for
          the <a href="#draw">draw</a> command; see that entry for a full
          list of options. The <i>-C</i> option provides the user a way
          to specify a color that overrides all other color
          specifications including combination colors and region-id-based
          colors. The -<i>A</i> and <i>-o</i> options allow the user to
          select objects by attribute. The -s specifies that subtracted
          and intersected objects should be drawn with solid lines rather
          than dot-dash lines. The -<i>R</i> option means do not
          automatically resize the view if no other objects are
          displayed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>e object1
            object2</b></span></dd>
    </dl>
    <p><span class="c6">-- Draw <i>object1</i> and <i>object2</i> in
        the <i>MGED</i> display.</span></p>
    <p><span class="c6"><span class="c13">mged&gt; </span>
        <span class="c14">e-A -o Comment {First comment} Comment {Second
          comment}</span></span></p>
    <div class="c7">
      <p><span class="c6">-- Draw objects that have a "Comment"
          attribute with a value of either "First comment" or "Second
          comment".</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="eac" id=
                                            "eac"></a>eac</b> &lt;<i>aircodes</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "eac" command adds all the
          regions in the current model that have one of the <a href=
                                                               "#SPACE">aircodes</a> in the argument list to the display list
          so that they will appear on the <i>MGED</i> display. Regions
          that have nonzero <a href="#IDENT">ident numbers</a> will not
          be listed by this command. The <a href="#whichair">whichair</a>
          command will perform the same search, but just lists the
          results.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>eac 1 2
            3</b></span></dd>
    </dl>
    <p><span class="c6">-- Draw all regions with <i>aircodes</i> 1,
        2, or 3 in the <i>MGED</i> display.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="echo" id=
                                            "echo"></a>echo</b> <i>text</i></span></dt>
      <dd class="c9"><span class="c16">The "echo" command merely
          echos whatever text is provided as an argument on the command
          line. This is intended for use in MGED scripts.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>echo some
            text goes here</b></span></dd>
    </dl>
    <p><span class="c6">-- Display the text, "some text goes
        here."</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="edcodes" id=
                                            "edcodes"></a>edcodes</b> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "edcodes" command puts the
          user into an editor to edit a file that has been filled with
          the <a href="#IDENT">ident</a>, <a href="#SPACE">air code</a>,
          <a href="#GIFTMAT">material code</a>, <a href="#LOS">LOS</a>,
          and name of all the <a href="#REGION">regions</a> in the
          specified objects. The user may then modify the entries (except
          for the names). The editor used is whatever the user has set in
          the environment variable <i>EDITOR</i>. If <i>EDITOR</i> is not
          set, then <i>/bin/ed</i> is used.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>edcodes
            object1 object2</b></span></dd>
    </dl>
    <p><span class="c6">-- Edit the region codes for all regions
        below object1 and object2.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="edcolor" id=
                                          "edcolor"></a>edcolor</span></dt>
      <dd class="c9"><span class="c12">The "edcolor" command puts the
          user into an editor to edit a file that has been filled with
          the <a href="#IDENT">ident</a> based color lookup table. The
          entire table may be seen with the <a href=
                                               "#prcolor">prcolor</a> command, and entries may be added using
          the <a href="#color">color</a> command. The editor used is
          whatever the user has set in the environment variable
          <i>EDITOR</i>. If <i>EDITOR</i> is not set, then <i>/bin/ed</i>
          is used.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>edcolor</b></span></dd>
    </dl>
    <p><span class="c12">-- Edit the color table.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="edcomb" id=
                                            "edcomb"></a>edcomb</b> <i>combname R|G regionid air_code
            los</i> [<i>material_code</i>]</span></dt>
      <dd class="c9"><span class="c6">The "edcomb" command allows the
          user to modify the attributes of a combination. The
          <i>combname</i> is the name of the combination to be modified.
          An <i>R</i> flag indicates that the <a href=
                                                 "#REGION">region</a> flag should be set; otherwise, the region
          flag is unset. If the region flag is not being set, then the
          remainder of the attributes are ignored. If the region flag is
          being set, then the <a href="#IDENT">region_id</a>, <a href=
                                                                 "#SPACE">aircode</a>, <a href="#LOS">los</a>, and <a href=
                                                                                                                      "#GIFTMAT">material_code</a> are set according to the arguments
          supplied.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>edcomb
            comb1 R 1001 0 50 8</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Make <i>comb1</i> a <i>region</i> and
          set its <i>ident</i> to 1001, its <i>air code</i> to 0, its
          <i>LOS</i> to 50, and its <i>material code</i> to 8.</span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>edcomb comb1 0 0 0
              0</b><br>
            -- Unset the <i>region</i> flag for combination
            <i>comb1.</i></span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="edgedir" id=
                                            "edgedir"></a>edgedir</b> [<i>x y z</i>]|[<i>rot
            fb</i>]</span></dt>
      <dd class="c9"><span class="c6">The "edgedir" command allows
          the user to set the direction of an edge by specifying a
          direction vector in the form of <i>x, y, </i> and <i>z</i>
          components or via rotation and fallback angles. This can only
          be done while moving an edge of an <a href=
                                                "#ARB">ARB</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>edgedir 0
            1 0</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate the edge being edited to be
        parallel to the <i>y</i> axis.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="edmater" id=
                                            "edmater"></a>edmater</b>
          &lt;<i>combinations</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "edmater" command places
          the user in an editor ready to edit a file filled with <a href=
                                                                    "#SHADER">shader</a> arguments for the <a href=
                                                                                                              "#COMBINATION">combinations</a> listed on the command line. The
          arguments placed in the file for editing are the <i>shader</i>
          name and its own arguments, <a href="#RGB">RGB</a> color,
          <i>RGB_valid</i> flag, and the <a href=
                                            "#INHERITANCE">inheritance</a> flag. The editor used is
          whatever the user has set in the environment variable
          <i>EDITOR</i>. If <i>EDITOR</i> is not set, then <i>/bin/ed</i>
          is used.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>edmater
            comb1 comb2</b></span></dd>
    </dl>
    <p><span class="c6">-- Edit the <i>shader</i> parameters for
        combinations named <i>comb1</i> and <i>comb2</i>.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="eqn" id=
                                            "eqn"></a>eqn</b> <i>A B C</i></span></dt>
      <dd class="c9"><span class="c16">The "eqn" command allows the
          user to rotate the face of an <a href="#ARB">ARB</a> shape by
          providing the coefficients of an equation of the desired plane
          for the face. The coefficients A, B, and C are from the plane
          equation:</span></dd>
    </dl>
    <pre class="c21"><span class=
                           "c6">        Ax + By + Cz = D</span></pre>
    <div class="c7">
      <p><span class="c6">The user must be editing an <i>ARB</i>
          shape and be rotating a face of the <i>ARB</i> for this command
          to have any effect. When entering such a state, the user will
          be asked which of the face vertices should be held constant,
          and from this information the <i>D</i> coefficient of the
          equation is determined.</span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>eqn 0 0
            1</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate the face of the <i>ARB</i> being
        edited to be parallel to the <i>xy</i> plane.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="erase" id=
                                          "erase"></a></span></dt>
      <dt class="c8"><span class="c6"><b>erase</b>
          <i>&lt;objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "erase" command deletes the
          specified list of objects from the MGED display. This is a
          synonym for the <a href="#d">d</a> command. Only objects that
          have been explicitly displayed may be deleted with the "erase"
          command (use the <a href="#who">who</a> command to see a list
          of explicitly displayed objects). Objects that are displayed as
          members of explicitly displayed combinations cannot be deleted
          from the display with this command (see <a href="#erase">erase
            -r</a>). Note that this has no effect on the <i>BRL-CAD</i>
          database itself. To actually remove objects from the database,
          use the <a href="#kill">kill</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>erase
            region1 shapea</b></span></dd>
    </dl>
    <p><span class="c6">-- Delete <i>region1</i> and <i>shapea</i>
        from the MGED display.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="ev" id=
                                            "ev"></a>ev</b> [<i>-dfnrstuvwST</i>] [<i>-P#</i>] [-C#/#/#]
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "ev" command evaluates the
          <i>objects</i> specified by tessellating all <a href=
                                                          "#SOLID">primitive shapes</a> in the objects and then
          performing any <a href="#BOOLEAN">Boolean operations</a>
          specified in the <i>objects</i>. The result is then displayed
          in the MGED display according to the specified
          options:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><i>d</span></i>
          <span class="c2">-- Do not perform Boolean operations or any
            checking; simply convert shapes to polygons and draw them.
            Useful for visualizing BOT and polysolid
            primitives.</span></li>
      <li><span class="c6"><i>f</i> -- Fast path for quickly
          visualizing polysolid primitives.</span></li>
      <li><span class="c6"><i>w</i> -- Draw wireframes (rather than
          polygons).</span></li>
      <li><span class="c6"><i>n</i> -- Draw surface normals as little
          "hairs."</span></li>
      <li><span class="c6"><i>s</i> -- Draw shape lines only (no
          dot-dash for subtract and intersect).</span></li>
      <li><span class="c6"><i>t</i> -- Perform CSG-to-tNURBS
          conversion (still under development).</span></li>
      <li><span class="c6"><i>v</i> -- Shade using per-vertex
          normals, when present.</span></li>
      <li><span class="c6"><span class="c2"><i>u</i> -- Draw</span>
          <a href="#NMG"><span class="c2">NMG</span></a> <span class=
                                                               "c2">edgeuses (for debugging).</span></span></li>
      <li><span class="c6"><i>S</i> -- Draw tNURBS with trimming
          curves only, no surfaces.</span></li>
      <li><span class="c6"><i>T</i> -- Do not triangulate after
          evaluating the Boolean (may produce unexpected results if not
          used with the <i>w</i> option).</span></li>
      <li><span class="c6"><i>P</i># -- Use # processors in parallel.
          Default=1.</span></li>
      <li><span class="c6"><i>r</i> -- Draw all objects in red.
          Useful for examining objects colored black.</span></li>
      <li><span class="c6"><i>C</i>#/#/# -- Draw all objects in in
          the specified rgb color.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>ev region1
            shapea</b></span></dd>
    </dl>
    <p><span class="c6">-- Display evaluated <i>region1</i> and
        <i>shapea</i> as shaded polygons.</span></p>
    <div class="c7">
      <p><span class="c6"><tt>mged&gt; </tt><b>ev -wT region1</b><br>
            -- Display evaluated <i>region1</i> as wireframe without
          triangulating.</span></p>
    </div>
    
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="exit" id=
                                          "exit"></a><b>exit</b></span></dt>
      <dd class="c9"><span class="c12">The "exit" command ends the
          MGED process. This is a synonym for the <a href=
                                                     "#quit">quit</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>exit</b></span></dd>
      <p><span class="c12">-- Stop MGED.</span></p>
      <p><span class="c12">&nbsp;</span></p>
      <dt class="c8"><span class="c12"><a name="expand" id=
                                          "expand"></a></span></dt>
    </dl>

    <hr class="c3">
    <dl>
      <dt><b>expand</b> <i>regular_expression</i></dt>
      <dd class="c9"><span class="c16">The "expand" command performs
          matching of the regular_expression with the names of all the
          objects in the database. It returns all those that successfully
          match.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>expand
            *.r</b></span></dd>
    </dl>
    <p><span class="c6">-- Display a list of all database object
        names that end in ".r".</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="expand_comb" id=
                                          "expand_comb"></a><b>expand_comb</b> <i>prefix comb
            ...</i></span></dt>
      <dd>
        <span class="c12">The <i>expand_comb</i> will create a new
          combination object <i>prefix</i>. For each Boolean node in
          the original tree of the combination a new combination will
          be created. Each combination constructed will contain a
          single Boolean operation of two leaf nodes. The leaf nodes
          will be named <i>prefix</i>l and <i>prefix</i>r for the left
          and right nodes of the tree respectively. Sub-nodes will have
          "l" and "r" suffixes added based upon whether they are left
          or right children of the node.</span>
        <p><span class="c12">Note that regions, combinations and
            objects created with the "g" command (sometimes colloquially
            referred to as groups) are all combinations, and can be
            expanded with this command.</span></p>
        <p><span class="c12">Example:</span></p>
        <pre class="c21"><span class="c6">
            <b><tt>mged&gt; </tt></b>foo.r u a - b + c u d + e
            Defaulting item number to 1003
            Creating region id=1003, air=0, GIFTmaterial=1, los=100
            <b><tt>mged&gt; </tt></b>l foo.r
            foo.r:  REGION id=1003  (air=0, los=100, GIFTmater=1) --
            u a
            - b
            + c
            u d
            + e
            <b><tt>mged&gt; </tt></b>tree foo.r
            foo.r/R
            u a
            - b
            + c
            u d
            + e

            <b><tt>mged&gt; </tt></b>expand_comb_tree -c foo.r
            <b><tt>mged&gt; </tt></b>l foo.r_xpand
            foo.r_xpand:  REGION id=1003  (air=0, los=100, GIFTmater=1) --
            u foo.r_xpand_l
            u foo.r_xpand_r
            <b><tt>mged&gt; </tt></b>tree foo.r_xpand
            foo.r_xpand/R
            u foo.r_xpand_l/R
            u foo.r_xpand_ll/R
            u a
            - b
            + c
            u foo.r_xpand_r/R
            u d
            + e
        </span></pre>
      </dd>

      <hr class="c3">
      <dt class="c8"><span class="c6"><b><a name="extrude" id=
                                            "extrude"></a>extrude</b> <i>#### distance</i></span></dt>
      <dd class="c9"><span class="c16">The "extrude" command modifies
          an <a href="#ARB">ARB</a> shape by extruding the specified face
          through the specified distance to determine the position of the
          opposing face. The face to be extruded is identified by listing
          its vertex numbers as they are labeled in the MGED display when
          the ARB is edited. Note that the face identified is not moved,
          but the opposite face is adjusted so that it is the specified
          distance from the specified face. The order that the vertex
          numbers are listed determines the direction of the extrusion
          using the right-hand rule.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>extrude
            1234 5</b></span></dd>
    </dl>
    <p><span class="c6"><span class="c2">-- Move face 5678 so that it
          is 5</span> <a href="#units"><span class="c2">units</span></a>
        <span class="c2">from face 1234.</span></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="eye_pt" id=
                                            "eye_pt"></a>eye_pt</b> <i>x y z</i></span></dt>
      <dd class="c9"><span class="c16">The "eye_pt" command positions
          the eye point to the given x, y, and z coordinates (specified
          in mm).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>eye_pt 100
            0 0</b></span></dd>
    </dl>
    <p><span class="c6">-- Position the eye at 100 mm along the
        <i>x</i> axis.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="facedef" id=
                                            "facedef"></a>facedef</b> <i>####</i> [<i>a|b|c|d
            parameters</i>]</span></dt>
      <dd class="c9"><span class="c6">The "facedef" command allows
          the user to redefine any face of an <a href="#ARB">ARB8</a>
          shape. The user must be in Primitive Edit Mode with an
          <i>ARB</i> selected for editing. The optional parameters may be
          omitted, and MGED will prompt for the missing values. The
          options are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><i><span class="c2">a</span></i>
          <span class="c2"><br>
            -- Specify the new location of this face by providing
            coefficients for its plane equation:</span></span></li>
    </ul>
    <div class="c22">
      <pre class="c21"><span class=
                             "c6">        Ax + By + Cz = D.</span></pre>
    </div>
    <ul>
      <li><span class="c6"><i><span class="c2">b</span></i>
          <span class="c2"><br>
            -- Specify the new location of this face using three
            points.</span></span></li>
      <li><span class="c6"><i>c</i><br>
          -- Specify the new location of this face using rotation and
          fallback angles.</span></li>
      <li><span class="c6"><i>d</i><br>
          -- Specify the new location of this face by changing the
          <i>D</i> value in the plane equation.</span></li>
      <li><span class="c6"><i>q</i><br>
          -- Return to MGED prompt.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>facedef
            1234 a 1 0 0 20</b></span></dd>
    </dl>
    <p><span class="c6">-- Move face 1234 such that it is in the
        <i>yz</i> plane at <i>x</i>=20.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>facedef 5678 b 0 0 10 10
              0 10 10 10 10</b><br>
            -- Move face 5678 such that it is in the plane formed by the
            three points (0 0 10), (10 0 10), and (10 10
            10).</span></span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="facetize" id=
                                            "facetize"></a>facetize</b> [<i>-ntT</i>] [<i>-P#</i>]
          <i>new_object old_object</i></span></dt>
      <dd class="c9"><span class="c16">The "facetize" command creates
          new_object as a <a href="#NMG">BOT</a> shape by tessellating
          all the <a href="#SOLID">primitive shapes</a> in old_object and
          then performing any <a href="#BOOLEAN">Boolean operations</a>
          specified in old_object. The -T option indicates that all faces
          in the new_object should be triangulated. The -n option
          specifies that the resulting shape should be saved as an NMG
          shape. The -t option is to create TNURB faces rather than
          planar approximations (this option is still under development).
          The -P option is intended to allow the user to specify the
          number of CPUs to use for this command, but it is currently
          ignored.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>facetize
            region1.nmg region1.r</b></span></dd>
    </dl>
    <p><span class="c6">-- Create a facetized <i>BOT</i> version of
        existing object <i>region1.r.</i></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="find" id=
                                            "find"></a>find</b> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "find" command displays all
          <a href="#COMBINATION">combinations</a> that have any of the
          <i>objects</i> specified as a <a href=
                                           "#MEMBER">member</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>find
            shapea</b></span></dd>
    </dl>
    <p><span class="c6">-- List all <i>combinations</i> that refer to
        <i>shapea.</i></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="fracture" id=
                                            "fracture"></a>fracture</b> <i>NMG_shape</i>
          [<i>prefix</i>]</span></dt>
      <dd class="c9"><span class="c6">The "fracture" command creates
          a new <a href="#NMG">NMG</a> shape for every "face" in the
          specified <i>NMG_shape</i>. The new shapes will be named by
          adding an underscore and a number to the <i>prefix</i>. If no
          <i>prefix</i> is specified, then the <i>NMG_shape</i> name
          provided is used in place of the <i>prefix</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>fracture
            shape1.nmg f</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Create a series of <i>NMG</i> shapes
          named "f_#", one for each face in <i>shape1.nmg.</i></span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="g" id="g"></a>g</b>
          <i>groupname</i> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "g" command creates a
          special type of combination often referred to as a <a href=
                                                                "#GROUP">group</a>. This builds a <i>combination</i> by
          unioning together all the listed <i>objects</i>. If
          <i>groupname</i> already exists, then the list of
          <i>objects</i> will be unioned to the end of it. (Note that an
          existing <i>groupname</i> is not restricted to being a
          <i>group</i>; any <i>combination</i> is legal.) Other commands
          to build <i>combinations</i> are <a href="#c">c</a>, <a href=
                                                                  "#r">r</a>, or <a href="#comb">comb</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>g
            shape1.nmg f</b></span></dd>
    </dl>
    <p><span class="c6">-- Create or extend shape1.nmg by unioning in
        <i>f.</i></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="garbage_collect" id=
                                          "garbage_collect"></a><b>garbage_collect</b></span></dt>
      <dd class="c9"><span class="c12">The "garbage_collect" command
          eliminates unused space in a BRL-CAD database file.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>garbage_collect</b></span></dd>
    </dl>
    <p><span class="c12">-- Clean out unused space in the
        database.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="gui" id=
                                            "gui"></a>gui</b> [<i>-config b|c|g</i>] [<i>-d
            display_string</i>] [<i>-gd graphics_display_string</i>]
          [<i>-dt graphics_type</i>] [<i>-id name</i>] [<i>-c -h -j
            -s</i>]</span></dt>
      <dd class="c9"><span class="c6">This command is used to create
          an instance of MGED�s default Tcl/Tk graphical user interface
          (GUI). The following options are allowed:</span></dd>
    </dl>
    <table cellspacing="0" border="0" width="100%">
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-config b|c|g</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Configure the GUI to display the
              command window, the graphics window, or both. This option
              is useful only when the GUI is combining the text and
              graphics windows. See the -c option.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-d display_string</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Display/draw the GUI on the screen
              indicated by the display_string. Note that this string
              format is the same as the X DISPLAY environment
              variable.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-gd display_string</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Display/draw the graphics window on the
              screen indicated by the display_string. Note that this
              string format is the same as the X DISPLAY environment
              variable.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-dt graphics_type</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Indicates the type of graphics windows
              to use. The possible choices are X and ogl (for machines
              that support OpenGL). Defaults to ogl, if supported;
              otherwise X.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-id name</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Specify the id to use when referring to
              this instance of the GUI.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-c</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Combine text window and display manager
              windows.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-s</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Use separate text window and display
              manager windows. This is the default behavior.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-j</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Join the collaborative
              session.</span></p>
        </td>
      </tr>
      <tr>
        <td width="24%" valign="middle">
          <p><span class="c2">-h</span></p>
        </td>
        <td width="76%" valign="middle">
          <p><span class="c2">Print the help message.</span></p>
        </td>
      </tr>
    </table>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="heal" id=
                                            "heal"></a>heal</b> [<i>command</i>]</span></dt>
      <dd>
        <p><span class="c6">The "heal" command takes in the bot as
            input along with the tolerances. As of now, it takes the
            tolerance only for zippering.</span></p>
        <p><span class="c6">The healing essentially comprises only of
            zippering now, but more features will be added later on. The
            algorithm cannot support non-manifold meshes (those
            containing singular vertices or edges). The bots need not be
            oriented, the algorithm takes care of that.</span></p>
      </dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>heal
            samplebot.s 47.3</b></span></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="help" id=
                                            "help"></a>help</b> [<i>command</i>]</span></dt>
      <dd class="c9"><span class="c6">The "help" command returns a
          list of available MGED commands along with a one-line usage
          message for each. If a command is supplied as an argument, the
          one-line usage message for that command is returned. The
          <a href="#helpdevel">helpdevel</a>, <a href=
                                                 "#helplib">helplib</a>, <a href="#questionmark">?</a>, <a href=
                                                                                                           "#questionmarkdevel">?devel</a>, and <a href=
                                                                                                                                                   "#questionmarklib">?lib</a> commands provide additional
          information on available commands.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>help
            ae</b></span></dd>
    </dl>
    <p><span class="c6">-- Display a one-line usage message for the
        <i>ae</i> command.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="helpdevel" id=
                                            "helpdevel"></a>helpdevel</b> [<i>command</i>]</span></dt>
      <dd class="c9"><span class="c6">The "helpdevel" command returns
          a list of available <i>developer</i> commands along with a
          one-line usage message for each. If a command is supplied as an
          argument, the one-line usage message for that command is
          returned. The <a href="#help">help</a>, <a href=
                                                     "#helplib">helplib</a>, <a href="#questionmark">?</a>, <a href=
                                                                                                               "#questionmarkdevel">?devel</a>, and <a href=
                                                                                                                                                       "#questionmarklib">?lib</a> commands provide additional
          information on available commands.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>helpdevel
            winset</b></span></dd>
    </dl>
    <p><span class="c6">-- Display a one-line usage message for the
        <i>winset</i> command.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="helplib" id=
                                            "helplib"></a>helplib</b> [<i>command</i>]</span></dt>
      <dd class="c9"><span class="c6">The "helplib" command returns a
          list of available <i>library</i> commands along with a one-line
          usage message for each. If a command is supplied as an
          argument, the one-line usage message for that command is
          returned. The <a href="#help">help</a>, <a href=
                                                     "#helpdevel">helpdevel</a>, <a href="#questionmark">?</a>,
          <a href="#questionmarkdevel">?devel</a>, and <a href=
                                                          "#questionmarklib">?lib</a> commands provide additional
          information on available commands.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>helplib
            mat_trn</b></span></dd>
    </dl>
    <p><span class="c6">-- Display a one-line usage message for the
        <i>mat_trn</i> command.</span></p>
    <p><span class="c6">&nbsp;</span></p>

    <hr class="c3">
    <dt class="c8"><span class="c12"><a name="hide" id=
                                        "hide"></a><b>hide</b> <i>&lt;objects&gt;</i></span></dt>
    <dd class="c9"><span class="c6">The "hide" command sets the
        "hidden" flag for the specified objects. When this flag is set,
        the objects do not appear in <a href="#hist_add">t</a> or
        <a href="#hist_add">ls</a> command outputs. The <i>-a</i>
        option on the <i>ls</i> or <i>t</i> command will force hidden
        objects to appear in its output.</span></dd>
    <dd></dd>
    <dd class="c9"><span class="c6">Examples:</span></dd>
    <dd></dd>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>hide
          sol_a</b></span></dd>
    <dd class="c9"><span class="c12">-- Mark <i>sol_a</i> as
        hidden.</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="history" id=
                                          "history"></a>history</b> [<i>-delays</i>]</span></dt>
    <dd class="c9"><span class="c6">The "history" command displays
        the list of commands executed during the current MGED session.
        The one exception is the <a href="#hist_add">hist_add</a>
        command, which can add a command to the history list without
        executing it. If the <i>-delays</i> option is used, then the
        delays between commands will also be displayed.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
        <b>history</b></span></dd>

    <p><span class="c6">-- Display the command history
        list.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="i" id="i"></a>i</b>
          <i>obj_name comb_name</i> [<i>operation</i>]</span></dt>
      <dd class="c9"><span class="c6">The "i" command adds
          <i>obj_name</i> to the end of the combination named
          <i>comb_name</i>. The <i>operation</i> may be "+, " "-, " or "u."
          If no <i>operation</i> is specified, "u" is assumed. If
          <i>comb_name</i> does not exist, it is created.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>i region3
            group5</b></span></dd>
    </dl>
    <p><span class="c6">-- Add <i>region3</i> to the combination
        <i>group5.</i></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="idents" id=
                                            "idents"></a>idents</b> <i>file_name</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "idents" command places a
          summary of the <a href="#REGION">regions</a> in the list of
          <i>objects</i> specified in the file specified. If any regions
          include other regions, then only the first encountered region
          in that tree will be listed. The resulting file will contain
          two lists of regions, one in the order encountered in the list
          of <i>objects</i>, and the other ordered by <a href=
                                                         "#IDENT">ident</a> number. The data written for each region
          includes (in this order) a sequential region count, the
          <i>ident</i> number, the <a href="#SPACE">air code</a>, the
          <a href="#GIFTMAT">material code</a>, the <a href=
                                                       "#LOS">LOS</a>, and the <a href="#PATH">path</a> to the
          region.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>idents
            regions_file group1 group2 region3</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Create a file named <i>regions_file</i>
          and list all the regions in <i>group1, group2, </i> and
          <i>region3</i> in the file.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="ill" id=
                                            "ill"></a>ill</b> <i>obj_name</i></span></dt>
      <dd class="c9"><span class="c16">The "ill" command performs the
          function of selecting an object after entering solid (i.e.,
          primitive) illuminate or object illuminate mode. In solid
          illuminate mode, this command selects the specific shape for
          editing. In object illuminate mode, this command selects the
          leaf object for the object path, then the user may use the
          mouse to select where along the object path the editing should
          be applied. In both modes, the ill command will only succeed if
          the specified obj_name is only referenced once in the displayed
          objects; otherwise a multiply referenced message will be
          displayed. If the ill command fails, the user must resort to
          either using the mouse to make the selection, or using <a href=
                                                                    "#aip">aip</a> and <a href="#M">M 1 0 0</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>ill
            shapea</b></span></dd>
    </dl>
    <p><span class="c6">-- Select <i>shapea</i> for
        editing.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="in" id=
                                            "in"></a>in</b> [<i>-f</i>] [<i>-s</i>] <i>new_shape_name
            shape_type</i> &lt;<i>parameters</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "in" command allows the
          user to type in the arguments needed to create a shape with the
          name <i>new_shape_name</i> of the type <i>shape_type</i>. The
          command may be invoked with no arguments, and it will prompt
          the user for all needed information. The <i>-s</i> option will
          invoke the primitive edit mode on the new shape immediately
          after creation. The <i>-f</i> option does not draw the new
          shape, and therefore the <i>-s</i> option may not be used in
          conjunction with <i>-f</i>. The possible values for
          <i>shape_type</i> are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><span class="c2">arb8 --</span> <a href=
                                                              "#ARB"><span class="c2">ARB</span></a> <span class="c2">(eight
            vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb7 --</span> <a href=
                                                              "#ARB"><span class="c2">ARB</span></a> <span class="c2">(seven
            vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb6 --</span> <a href=
                                                              "#ARB"><span class="c2">ARB</span></a> <span class="c2">(six
            vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb5 --</span> <a href=
                                                              "#ARB"><span class="c2">ARB</span></a> <span class="c2">(five
            vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb4 --</span> <a href=
                                                              "#ARB"><span class="c2">ARB</span></a> <span class="c2">(four
            vertices).</span></span></li>
      <li><span class="c6">arbn � Arbitrary polyhedron with arbitrary
          number of vertices (plane equations).</span></li>
      <li><span class="c6">bot � Bag of Triangles.</span></li>
      <li><span class="c6">dsp � Displacement Map.</span></li>
      <li><span class="c6">pipe � Pipe (run of connected pipe or
          wire).</span></li>
      <li><span class="c6"><span class="c2">ebm --</span><a href=
                                                            "#EBM"><span class="c2">Extruded Bit Map</span></a><span class=
                                                                                                                     "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">vol --</span><a href=
                                                            "#VOL"><span class="c2">Voxels</span></a><span class=
                                                                                                           "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">hf --</span> <a href=
                                                            "#HF"><span class="c2">Height Field</span></a> <span class=
                                                                                                                 "c2">deprecated, see dsp.</span></span></li>
      <li><span class="c6"><span class="c2">ars --</span> <a href=
                                                             "#ARS"><span class="c2">Arbitrary Faceted
              Solid</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">half --</span> <a href=
                                                              "#HAF"><span class="c2">Half Space</span></a><span class=
                                                                                                                 "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">sph --</span> <a href=
                                                             "#ELL"><span class="c2">Ellipsoid</span></a> <span class=
                                                                                                                "c2">(center and radius).</span></span></li>
      <li><span class="c6"><span class="c2">ell --</span> <a href=
                                                             "#ELL"><span class="c2">Ellipsoid</span></a> <span class=
                                                                                                                "c2">(center and three semi-axes).</span></span></li>
      <li><span class="c6"><span class="c2">ellg --</span> <a href=
                                                              "#ELL"><span class="c2">Ellipsoid</span></a> <span class=
                                                                                                                 "c2">(foci and chord length).</span></span></li>
      <li><span class="c6"><span class="c2">ell1 --</span> <a href=
                                                              "#ELL"><span class="c2">Ellipsoid</span></a> <span class=
                                                                                                                 "c2">(center, one semi-axis, and a radius of
            revolution).</span></span></li>
      <li><span class="c6"><span class="c2">tor --</span> <a href=
                                                             "#TOR"><span class="c2">Torus</span></a><span class=
                                                                                                           "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">tgc --</span> <a href=
                                                             "#TGC"><span class="c2">Truncated General Cone</span></a>
          <span class="c2">(most general TGC).</span></span></li>
      <li><span class="c6"><span class="c2">tec --</span> <a href=
                                                             "#TGC"><span class="c2">Truncated General Cone</span></a>
          <span class="c2">(top radii are scaled from base
            radii).</span></span></li>
      <li><span class="c6"><span class="c2">rec --</span> <a href=
                                                             "#TGC"><span class="c2">Truncated General Cone</span></a>
          <span class="c2">(right elliptical
            cylinder).</span></span></li>
      <li><span class="c6"><span class="c2">trc --</span> <a href=
                                                             "#TGC"><span class="c2">Truncated General Cone</span></a>
          <span class="c2">(truncated right circular
            cone).</span></span></li>
      <li><span class="c6"><span class="c2">rcc --</span> <a href=
                                                             "#TGC"><span class="c2">Truncated General Cone</span></a>
          <span class="c2">(right circular cylinder).</span></span></li>
      <li><span class="c6"><span class="c2">box --</span> <a href=
                                                             "#ARB"><span class="c2">ARB</span></a> <span class="c2">(vertex
            and three vectors).</span></span></li>
      <li><span class="c6"><span class="c2">raw --</span> <a href=
                                                             "#ARB"><span class="c2">ARB</span></a> <span class="c2">(right
            angle wedge).</span></span></li>
      <li><span class="c6"><span class="c2">rpp --</span> <a href=
                                                             "#ARB"><span class="c2">ARB</span></a> <span class="c2">(axis
            aligned rectangular parallelepiped).</span></span></li>
      <li><span class="c6"><span class="c2">rpc --</span> <a href=
                                                             "#RPC"><span class="c2">Right Parabolic
              Cylinder</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">rhc --</span> <a href=
                                                             "#RHC"><span class="c2">Right Hyperbolic
              Cylinder</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">epa --</span> <a href=
                                                             "#EPA"><span class="c2">Elliptical
              Paraboloid</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">ehy --</span> <a href=
                                                             "#EHY"><span class="c2">Elliptical
              Hyperboloid</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">eto --</span> <a href=
                                                             "#ETO"><span class="c2">Elliptical Torus</span></a><span class=
                                                                                                                      "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">part --</span> <a href=
                                                              "#PART"><span class="c2">Particle</span></a><span class=
                                                                                                                "c2">.</span></span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>in new1
            raw 0 0 0 0 0 1 1 0 0 0 1 0</b></span></dd>
    </dl>
    <p><span class="c6">-- Create an <i>ARB</i> named <i>new1</i> in
        the form of a right angle wedge.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="inside" id=
                                            "inside"></a>inside</b> [<i>outside_shape_name
            new_inside_shape_name</i>
          &lt;<i>parameters</i>&gt;]</span></dt>
      <dd class="c9"><span class="c6">The "inside" command creates a
          new shape that is <i>inside</i> an existing shape. This command
          is typically used to create an <i>inside</i> shape that can be
          subtracted from the original shape to produce a hollow shell.
          The command is typically used with no arguments, and it prompts
          the user for all needed information; however, all the
          parameters may be supplied on the command line. If MGED is in
          <a href="#SOLID%20EDIT">primitive edit mode</a>
          when the "inside" command is issued, then the shape currently
          being edited will be used as the "outside_shape." Similarly, if
          MGED is in <a href="#MATRIX%20EDIT">matrix edit
            mode</a> when the "inside" command is executed, then the
          current <a href="#KEY%20SOLID">key shape</a> will be used as
          the outside shape.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>inside
            out_arb in_arb 1 1 1 1 1 1</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2">-- Create a shape named
            <i>in_arb</i> such that each face is 1</span> <a href=
                                                             "#units"><span class="c2">unit</span></a> <span class="c2">from
            the corresponding face in <i>out_arb.</i></span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>inside in_arb 1 1 1 1 1
              1</b><br>
            -- Create a shape named <i>in_arb</i> such that each face is
            1</span> <a href="#units"><span class="c2">unit</span></a>
          <span class="c2">from the corresponding face in the
            current</span> <a href="#KEY%20SOLID"><span class="c2">key
              shape</span></a> <span class="c2">or the shape currently being
            edited.</span></span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="item" id=
                                            "item"></a>item</b> <i>region_name ident_number</i>
          [<i>air_code</i> [<i>material_code</i>
          [<i>LOS</i>]]]</span></dt>
      <dd class="c9"><span class="c6">The "item" command sets the
          values of <a href="#IDENT">ident_number</a>, <a href=
                                                          "#SPACE">aircode</a>, <a href="#GIFTMAT">material_code</a>, and
          <a href="#LOS">LOS</a> for the specified <a href=
                                                      "#REGION">region</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>item
            region_1 1137 0 8 100</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Set <i>ident number</i> to 1137, <i>air
            code</i> to 0, <i>material code</i> to 8, and <i>los</i> to 100
          for <i>region_1.</i></span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="joint" id=
                                            "joint"></a>joint</b> <i>command</i>
          [<i>options</i>]</span></dt>
      <dd class="c9"><span class="c6">articulation/animation commands
          (experimental)</span></dd>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c12">?</span></dt>
            <dd class="c9"><span class="c12">This command returns a
                list of available joint commands.</span></dd>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>accept</b> [<i>-m</i>]
                [<i>joint_names</i>]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>debug</b> [<i>hex
                  code</i>]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>help</b>
                [<i>commands</i>]</span></dt>
            <dd class="c9"><span class="c6">This command returns a
                usage message for each joint command.</span></dd>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>holds</b>
                [<i>names</i>]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>list</b>
                [<i>names</i>]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>load</b>
                <i>file_name</i></span></dt>
            <dd></dd>
            <dt class="c8"><span class="c18">mesh</span></dt>
            <dt class="c8"><span class="c16"><b>move</b> joint_name
                p1 [p2...p6]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>reject</b>
                [<i>joint_names</i>]</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>save</b>
                file_name</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6"><b>solve</b>
                <i>constraint</i></span></dt>
            <dd></dd>
            <dt class="c8"><span class="c16"><b>test</b>
                file_name</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c18">unload</span></dt>
          </dl>
        </div>
      </dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="journal" id=
                                             "journal"></a>journal</b> [-d]
          [journal_file_name]</span></dt>
      <dd class="c9"><span class="c6">The "journal" command
          starts or stops the journaling of MGED commands to a file.
          If executed with no arguments, the command stops
          journaling. If <i>journal_file_name</i> is provided, that
          file will become the recipient of the journaling. If a
          <i>-d</i> option is also provided, the journaling will
          include the delays between commands. Journaling is off by
          default.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>journal journal_file</b></span></dd>
    </dl>
    <p><span class="c6">-- Start journaling to
        <i>journal_file.</i></span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="keep" id=
                                            "keep"></a>keep</b> <i>keep_file</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "keep" command copies
          the <i>objects</i> specified to the <i>keep_file</i>. If
          <i>keep_file</i> does not exist, it is created. If
          <i>keep_file</i> does exist, the <i>objects</i> are
          appended to it. The <i>keep_file</i> is a <i>BRL-CAD</i>
          database file. The <i>objects</i> in the list must exist in
          the current database.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>keep
            sample.g sample1 sample2</b></span></dd>
    </dl>
    <p><span class="c6">-- Create <i>sample.g</i> file with
        objects <i>sample1</i> and <i>sample2</i> in it.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="keypoint" id=
                                            "keypoint"></a>keypoint</b> [<i>x y z |
            reset</i>]</span></dt>
      <dd class="c9"><span class="c6">The "keypoint" command
          without any options displays the current keypoint setting.
          If a point is specified, then that point becomes the
          <i>keypoint</i>. If <i>reset</i> is specified, then the
          default <i>keypoint</i> is restored. The <i>keypoint</i> is
          used as the center of rotation and scaling in primitive
          edit or matrix edit (formerly known as object edit) modes.
          This command has no effect when used in nonediting
          modes.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>keypoint 10 20 30</b></span></dd>
    </dl>
    <p><span class="c6">-- Set the <i>keypoint</i> to the point
        (10 20 30) in model units.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="kill" id=
                                            "kill"></a>kill</b> [<i>-f</i>]
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "kill" command deletes
          the specified <i>objects</i> from the current database.
          This command affects only the <i>objects</i> actually
          listed on the command line. If a combination is killed, its
          members are not affected. If the <i>-f</i> option is
          specified, then kill will not complain if some, or all, of
          the <i>objects</i> specified do not actually exist in the
          database. Note that the <i>objects</i> are killed
          immediately. There is no need for a "write file" command in
          MGED, and there is no "undo" command. Use this command with
          caution. Other commands that remove objects from the
          database are <a href="#killall">killall</a> and <a href=
                                                             "#killtree">killtree</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>kill
            group1 region2 shapeb</b></span></dd>
    </dl>
    <p><span class="c6">-- Destroy <i>group1</i>, <i>region2</i>,
        and <i>shapeb.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="killall" id=
                                          "killall"></a></span></dt>
      <dt class="c8"><span class="c6"><b>killall</b>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "killall" command
          deletes the specified <i>objects</i> from the current
          database and removes all references to them from all
          <a href="#COMBINATION">combinations</a> in the database.
          Note that the <i>objects</i> are killed immediately. There
          is no need for a "write file" command in MGED, and there is
          no "undo" command. <b>Use this command with caution.</b>
          Other commands that remove objects from the database are
          <a href="#kill">kill</a> and <a href=
                                          "#killtree">killtree</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>killall group1 region2 shapeb</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Destroy <i>group1</i>,
          <i>region2</i>, and <i>shapeb</i> and remove all references
          to these objects from the database.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="killtree" id=
                                            "killtree"></a>killtree</b>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "killtree" command
          deletes the specified <i>objects</i> from the current
          database and recursively deletes all objects referenced by
          any of those objects. If one of the <i>objects</i> listed
          is a combination, then that <i>combination</i> as well as
          any objects that are members of that <i>combination</i>
          will be deleted. If a member of that <i>combination</i> is
          itself a <i>combination</i>, then all of its members will
          also be destroyed. This continues recursively until the
          <a href="#SOLID">primitive shapes</a> are reached and
          destroyed. Note that the <i>objects</i> are killed
          immediately. There is no need for a "write file" command in
          MGED, and there is no "undo" command. Use this command with
          extreme caution. Other commands that remove objects from
          the database are <a href="#kill">kill</a> and <a href=
                                                           "#killall">killall</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>killtree group1 region2 shapeb</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Destroy <i>group1</i>,
          <i>region2</i>, and <i>shapeb</i> and remove all references
          to these objects from the database.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="knob" id=
                                            "knob"></a>knob</b> [<i>-e -i -m -v</i>] [<i>-o
            v|m|e|k</i>] [<i>zap|zero|(id</i>
          [<i>val</i>])]</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><b>The "knob" command is
            used internally by MGED in the processing of knob input
            devices and is not recommended for users.</b> The
          <i>knob</i> command provides a method for simulating knob
          input. With no options, it will display the current values
          for the knobs. With the <i>zap</i> or <i>zero</i> command
          provided, all the knob values will be reset to zero. If an
          <i>id</i> and <i>value</i> are provided, the specified knob
          setting will be simulated. If the <i>-i</i> option is
          specified, then the value provided will be used as an
          increment to be applied to the indicated knob. The knobs
          have different functions depending on the current mode. For
          example, if in primitive or matrix edit mode and a rotation
          or translation function is selected, the knob effects are
          applied to the edited object by default. However, the
          <i>-v</i> (view coordinates) and <i>-m</i> (model
          coordinates) options may be used to adjust the view without
          modifying primitives or matrices. The <i>-e</i> option
          allows the knob effects to be applied to the edited object
          when they would normally be applied to the view. The
          <i>-o</i> option allows the origin of rotation to be
          specified with <i>v</i>, <i>m</i>, <i>e</i>, and <i>k</i>,
          indicating view, model, and eye and keypoint, respectively.
          The units for <i>value</i> are degrees for rotation and
          local units for translation. The available <i>knob ids</i>
          are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><b><span class="c2">x</span></b>
          <span class="c2">-- rate-based rotation about horizontal
            axis.</span></span></li>
      <li><span class="c6"><b>y</b> -- rate-based rotation about
          vertical axis.</span></li>
      <li><span class="c6"><b>z</b> -- rate-based rotation about
          axis normal to screen.</span></li>
      <li><span class="c6"><b>X</b> -- rate-based translation in
          horizontal direction.</span></li>
      <li><span class="c6"><b>Y</b> -- rate-based translation in
          vertical direction.</span></li>
      <li><span class="c6"><b>Z</b> -- rate-based translation in
          direction normal to screen.</span></li>
      <li><span class="c6"><b>S</b> -- rate-based Scale or
          Zoom.</span></li>
      <li><span class="c6"><b>ax</b> -- absolute rotation about
          horizontal axis.</span></li>
      <li><span class="c6"><b>ay</b> -- absolute rotation about
          vertical axis.</span></li>
      <li><span class="c6"><b>az</b> -- absolute rotation about
          axis normal to screen.</span></li>
      <li><span class="c6"><b>aX</b> -- absolute translation in
          horizontal direction.</span></li>
      <li><span class="c6"><b>aY</b> -- absolute translation in
          vertical direction.</span></li>
      <li><span class="c6"><b>aZ</b> -- absolute translation in
          direction normal to screen.</span></li>
      <li><span class="c6"><b>aS</b> -- absolute Scale or
          Zoom.</span></li>
      <li><span class="c6"><span class="c2"><b>xadc</b> --
            absolute translation of</span> <a href="#adc"><span class=
                                                                "c2">adc</span></a> <span class="c2">in horizontal
            direction (screen coordinates -2048 to
            +2048).</span></span></li>
      <li><span class="c6"><span class="c2"><b>yadc</b> --
            absolute translation of</span> <a href="#adc"><span class=
                                                                "c2">adc</span></a> <span class="c2">in vertical direction
            (screen coordinates -2048 to +2048).</span></span></li>
      <li><span class="c6"><span class="c2"><b>ang1</b> --
            absolute rotation of</span> <a href="#adc"><span class=
                                                             "c2">adc</span></a> <span class="c2">angle1
            (degrees).</span></span></li>
      <li><span class="c6"><span class="c2"><b>ang2</b> --
            absolute rotation of</span> <a href="#adc"><span class=
                                                             "c2">adc</span></a> <span class="c2">angle2
            (degrees).</span></span></li>
      <li><span class="c6"><span class="c2"><b>distadc</b> --
            distance setting of the</span> <a href="#adc"><span class=
                                                                "c2">adc</span></a> <span class="c2">(screen coordinates
            -2048 to +2048).</span></span></li>
    </ul>
    <p><span class="c6">&nbsp;</span></p>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>knob y
            1</b></span></dd>
    </dl>
    <p><span class="c6">-- Start the view rotating about the
        vertical axis.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="l" id=
                                          "l"></a></span></dt>
      <dt class="c8"><span class="c6"><b>l</b> [-<i>r</i>]
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "l" command displays a
          verbose description about the specified list of <a href=
                                                             "#OBJECT">objects</a>. If a specified <i>object</i> is a
          <a href="#PATH">path</a>, then any transformation matrices
          along that <i>path</i> are applied. If the final
          <i>path</i> component is a combination, the command will
          list the <a href="#BOOLEAN">Boolean</a> formula for the
          <i>combination</i> and will indicate any accumulated
          transformations (including any in that <i>combination</i>).
          If a <a href="#SHADER">shader</a> and/or color has been
          assigned to the <i>combination</i>, the details will be
          listed. For a <a href="#REGION">region</a>, its <a href=
                                                             "#IDENT">ident</a>, <a href="#SPACE">air code</a>, <a href=
                                                                                                                   "#GIFTMAT">material code</a>, and <a href="#LOS">LOS</a>
          will also be listed. For <a href="#SOLID">primitive
            shapes</a>, detailed <i>shape</i> parameters will be
          displayed with the accumulated transformation applied. If
          the <i>-r</i> (recursive) option is used, then each
          <i>object</i> on the command line will be treated as a
          <i>path</i>. If the <i>path</i> does not end at a primitive
          <i>shape</i>, then all possible <i>paths</i> from that
          point down to individual <i>shapes</i> will be considered.
          The <i>shape</i> at the end of each possible <i>path</i>
          will be listed with its parameters adjusted by the
          accumulated transformation.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>l
            region1</b></span></dd>

      <p><span class="c6">-- Display details about
          region1.</span></p>
      <div class="c7">
        <p><span class="c6"><span class="c2"><br></span>
            <tt>mged&gt; </tt><span class="c2"><b>l
                group1/group2/region1/shape3</b><br>
              -- Display shape parameters for <i>shape3</i> with matrices
              applied from the <i>path.</i></span></span></p>
        <p><span class="c6"><span class="c2"><br></span>
            <tt>mged&gt; </tt><span class="c2"><b>l -r a/b</b><br>
              -- Display all possible paths that start with <i>a/b</i>
              and end in a primitive <i>shape</i><br>
              -- The shape parameters with the accumulated transformation
              applied will be displayed.</span></span></p>
      </div>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="labelvert" id=
                                            "labelvert"></a>labelvert</b>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "labelvert" command
          labels the vertices of the indicated <i>objects</i> with
          their coordinate values in the MGED display window. The
          <i>objects</i> must have already been displayed using
          <a href="#e">e</a>, <a href="#E">E</a>, <a href=
                                                     "#ev">ev</a>, <a href="#B">B</a>, or any other command that
          results in the display of an object.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>labelvert shapeb</b></span></dd>
    </dl>
    <p><span class="c6">-- Place coordinate values in display
        near the vertices of <i>shapeb.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="listeval" id=
                                            "listeval"></a>listeval</b> [<i>path</i>]</span></dt>
      <dd class="c9"><span class="c6"><a href=
                                         "#COMBINATION">Combinations</a> may include transformation
          matrices to be applied to their members. A <i>path</i>
          through a series of <i>combinations</i> and ending with a
          <a href="#SOLID">primitive shape</a> represents that
          <i>primitive shape</i> with the transformations accumulated
          through the path applied to it. The "listeval" command
          displays primitive shape parameters after applying the
          accumulated transformations from the indicated <i>path</i>.
          If the specified <i>path</i> does not end at a <i>primitive
            shape</i>, then all possible paths from the indicated
          <i>path</i> to any <i>primitive shape</i> will be evaluated
          and displayed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>listeval group1/region1/shapeb</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Display the parameters for
          <i>shapeb</i> after applying the transformation matrix from
          <i>group1</i> for <i>region1</i> and the transformation
          matrix from <i>region1</i> for <i>shapeb.</i></span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="loadtk" id=
                                            "loadtk"></a>lm</b> [-l] [values]</span></dt>
      <dd class="c9"><span class="c6">The "lm" command with no
          values argument lists the name of every region in the
          database (in alphabetical order), except for those marked
          as hidden with the hide command. If the values argument is
          supplied, only those regions with a "MUVES_Component"
          attribute having one of the values are listed. The �l
          option specifies to use a long format showing object name,
          object type, major type, minor type, and
          length.</span></dd>
      <dd></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dt class="c8"><span class="c6">	<span class=
                                              "c13">mged&gt; </span><b>lm engine</b></span></dt>
      <dd class="c9"><span class="c12">--List all regions with
          "MUVES_Component" attribute having a value of
          "engine".</span></dd>
      <dd></dd>
      <dd class="c9"><span class="c12"><span class=
                                             "c13">mged&gt; </span>lm �1 engine pilot</span></dd>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c6">--List all regions
                with "MUVES_Component" attribute having a value of
                "engine" or "pilot, " and use the long
                format.</span></dt>
          </dl>
        </div>
      </dd>
    </dl>
    
    <hr class="c3">
    <dt class="c8"><span class="c12"><b>loadtk</b></span></dt>
    <dd class="c9"><span class="c12">The "loadtk" command loads the
        initialization for the Tk window library. This is normally
        done automatically when the
        user <a href="#attach">attaches</a> any display manager for
        MGED. If no display manager is attached, then the user must
        execute
        <i>loadtk</i> prior to using any Tk facilities.</span></dd>
    <dt class="c8"><span class="c12">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
        <b>loadtk</b></span></dd>

    <p><span class="c12">-- Initialize the Tk window
        library.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="lookat" id=
                                          "lookat"></a></span></dt>
      <dt class="c8"><span class="c6"><b>lookat</b> <i>x y
            z</i></span></dt>
      <dd class="c9"><span class="c16">The "lookat" command
          adjusts the current view in MGED such that the eye is
          looking in the direction of the given coordinates, but does
          not move the eye point nor change the view size. This is
          similar to just rotating the viewers head to look at the
          specified point, putting that point in the center of the
          MGED display. The <a href="#center">center</a> command
          performs a similar function, but moves the eye_pt without
          changing the viewing direction.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt>
          <b>lookat 10 20 30</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c16">-- Rotate the view to place the point
          (10 20 30) (model coordinates) in the center of the
          display.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="ls" id=
                                             "ls"></a>ls</b> [<i>-A -o -a -c -r -s -p -l</i>]
          [<i>objects</i>]</span></dt>
      <dd class="c9"><span class="c6">The "ls" command with no
          <i>object</i> argument lists the name of every object in
          the database (in alphabetical order) except for those
          marked as hidden with the <a href="#center">hide</a>
          command. If the <i>object</i> argument is supplied, only
          those <i>objects</i> are listed. The <i>object</i> argument
          may include regular expressions. If the <i>-A</i> option is
          used, then the arguments are expected to be a list of
          attribute name/value pairs, and objects having attributes
          that match the provided list are listed. By default, an
          object must match all the specified attributes in order to
          be listed; however, the -<i>o</i> flag indicates that an
          object matching at least one attribute name/value pair
          should be listed. See the <a href="#center">attr</a>
          command for information on how to set or get attributes.
          Regular expressions are not supported for attributes. The
          following options are also allowed:</span></dd>
    </dl>
    <ul>
      <li><span class="c6">a - List all objects in the
          database.</span></li>
      <li><span class="c6">c - List all non-hidden combinations
          in the database.</span></li>
      <li><span class="c6">r - List all non-hidden regions in the
          database.</span></li>
      <li><span class="c6">s - List all non-hidden primitives in
          the database.</span></li>
      <li><span class="c6">p - List all non-hidden primitives in
          the database.</span></li>
      <li><span class="c6">l - Use long format showing object
          name, object type, major type, minor type, and
          length.</span></li>
    </ul>
    <div class="c7">
      <p><span class="c6"><span class="c2">The <i>ls</i> command
            is a synonym for the</span> <a href="#t"><span class=
                                                           "c2">t</span></a> <span class="c2">command. Note that when
            any of the above options are used, the output is not
            formatted.</span></span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>ls
            shape*</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List all objects with names
          beginning with "shape" (output is formatted).</span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ls -a shape*</b><br>
            -- List all objects with names beginning with
            "shape."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ls -p wheel*</b><br>
            -- List all primitives with names beginning with
            "wheel."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ls -r wheel*</b><br>
            -- List all regions with names beginning with
            "wheel."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ls -c
              suspension*</b><br>
            -- List all combinations with names beginning with
            "suspension."</span></span></p>
      <p><span class="c6"><span class="c13">mged&gt; </span>
          <span class="c14">ls -A -o -r Comment {First comment}
            Comment {Second comment}</span></span></p>
      <p><span class="c6">-- List all regions that have a
          "Comment" attribute that is set to either "First comment"
          or "Second comment."</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="make" id=
                                            "make"></a>make</b> <i>-t | new_shape type</i></span></dt>
      <dd class="c9"><span class="c16">The "make" command creates
          a new_shape of the indicated type. The new_shape is sized
          according to the current view size and is dependent on the
          type. The possible values for type are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><span class="c2">arb8 --</span>
          <a href="#ARB"><span class="c2">ARB</span></a> <span class=
                                                               "c2">(eight vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb7 --</span>
          <a href="#ARB"><span class="c2">ARB</span></a> <span class=
                                                               "c2">(seven vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb6 --</span>
          <a href="#ARB"><span class="c2">ARB</span></a> <span class=
                                                               "c2">(six vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb5 --</span>
          <a href="#ARB"><span class="c2">ARB</span></a> <span class=
                                                               "c2">(five vertices).</span></span></li>
      <li><span class="c6"><span class="c2">arb4 --</span>
          <a href="#ARB"><span class="c2">ARB</span></a> <span class=
                                                               "c2">(four vertices).</span></span></li>
      <li><span class="c6"><span class="c2">bot --</span>
          <a href="#ls"><span class="c2">BOT</span></a> <span class=
                                                              "c2">(Bag Of Triangles).</span></span></li>
      <li><span class="c6"><span class="c2">sph --</span>
          <a href="#ELL"><span class="c2">Ellipsoid</span></a>
          <span class="c2">(sphere).</span></span></li>
      <li><span class="c6"><span class="c2">ell --</span>
          <a href="#ELL"><span class="c2">Ellipsoid</span></a>
          <span class="c2">(ellipsoid of
            revolution).</span></span></li>
      <li><span class="c6"><span class="c2">ellg --</span>
          <a href="#ELL"><span class="c2">Ellipsoid</span></a>
          <span class="c2">(general ellipsoid).</span></span></li>
      <li><span class="c6"><span class="c2">tor --</span>
          <a href="#TOR"><span class=
                               "c2">Torus</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">tgc --</span>
          <a href="#TGC"><span class="c2">Truncated General
              Cone</span></a> <span class="c2">(most general
            TGC).</span></span></li>
      <li><span class="c6"><span class="c2">tec --</span>
          <a href="#TGC"><span class="c2">Truncated General
              Cone</span></a> <span class="c2">(truncated elliptical
            cone).</span></span></li>
      <li><span class="c6"><span class="c2">rec --</span>
          <a href="#TGC"><span class="c2">Truncated General
              Cone</span></a> <span class="c2">(right elliptical
            cylinder).</span></span></li>
      <li><span class="c6"><span class="c2">trc --</span>
          <a href="#TGC"><span class="c2">Truncated General
              Cone</span></a> <span class="c2">(truncated right circular
            cone).</span></span></li>
      <li><span class="c6"><span class="c2">rcc --</span>
          <a href="#TGC"><span class="c2">Truncated General
              Cone</span></a> <span class="c2">(right circular
            cylinder).</span></span></li>
      <li><span class="c6"><span class="c2">half --</span>
          <a href="#HAF"><span class="c2">Half
              Space</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">rpc --</span>
          <a href="#RPC"><span class="c2">Right Parabolic
              Cylinder</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">rhc --</span>
          <a href="#RHC"><span class="c2">Right Hyperbolic
              Cylinder</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">epa --</span>
          <a href="#EPA"><span class="c2">Elliptical
              Paraboloid</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">ehy --</span>
          <a href="#EHY"><span class="c2">Elliptical
              Hyperboloid</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">eto --</span>
          <a href="#ETO"><span class="c2">Elliptical
              Torus</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">part --</span>
          <a href="#PART"><span class=
                                "c2">Particle</span></a><span class=
                                                              "c2">.</span></span></li>
      <li><span class="c6"><span class="c2">nmg --</span>
          <a href="#NMG"><span class="c2">Non-Manifold
              Geometry</span></a> <span class="c2">(an NMG consisting of
            a single vertex is built).</span></span></li>
      <li><span class="c6"><span class="c2">pipe --</span>
          <a href="#PIPE"><span class=
                                "c2">Pipe</span></a><span class="c2">.</span></span></li>
      <li><span class="c6">grip -- support for
          joints.</span></li>
      <li><span class="c6">extrude -- experimental.</span></li>
      <li><span class="c6">sketch -- experimental.</span></li>
    </ul>
    <p><span class="c6">&nbsp;</span></p>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>make
            shapea sph</b></span></dd>
    </dl>
    <p><span class="c6">-- Create a sphere named
        <i>shapea.</i></span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>make -t</b><br>
            -- Return a list of shape types handled by
            <i>make.</i></span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mater" id=
                                            "mater"></a>mater</b> <i>combination</i>
          [<i>shader_parameters</i>[<i>RGB</i>
          [<i>inheritance</i>]]]</span></dt>
      <dd class="c9"><span class="c6">The "mater" command assigns
          <a href="#SHADER">shader</a> parameters, <a href=
                                                      "#RGB">RGB</a> color, and <a href=
                                                                                   "#INHERITANCE">inheritance</a> to an existing combination.
          The information may be included on the command line;
          otherwise the user will be prompted for it. Some available
          shaders are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6">bump -- bump maps.</span></li>
      <li><span class="c6">bwtexture -- black and white texture
          maps.</span></li>
      <li><span class="c6">camo -- camouflage.</span></li>
      <li><span class="c6">checker -- checkerboard
          design.</span></li>
      <li><span class="c6">cloud -- 2D Geoffrey Gardner style
          cloud texture map.</span></li>
      <li><span class="c6">envmap -- environment
          mapping.</span></li>
      <li><span class="c6">fakestar -- a fake star
          pattern.</span></li>
      <li><span class="c6">fbmbump -- fbm noise applied to
          surface normal.</span></li>
      <li><span class="c6">fbmcolor -- fbm noise applied to
          color.</span></li>
      <li><span class="c6">fire -- flames simulated with
          turbulence noise.</span></li>
      <li><span class="c6">glass -- Phong shader with values set
          to simulate glass.</span></li>
      <li><span class="c6">gravel -- turbulence noise applied to
          color and surface normal.</span></li>
      <li><span class="c6">light -- light source.</span></li>
      <li><span class="c6">marble -- marble texture.</span></li>
      <li><span class="c6">mirror -- Phong shader with values set
          to simulate mirror.</span></li>
      <li><span class="c6">plastic -- Phong shader with values
          set to simulate plastic.</span></li>
      <li><span class="c6">rtrans -- random
          transparency.</span></li>
      <li><span class="c6">scloud -- 3D cloud shader.</span></li>
      <li><span class="c6">spm -- spherical texture
          maps.</span></li>
      <li><span class="c6">stack -- allows stacking of
          shaders.</span></li>
      <li><span class="c6">stxt -- shape texture
          mapping.</span></li>
      <li><span class="c6">texture -- full color texture
          mapping.</span></li>
      <li><span class="c6">turbump -- turbulence noise applied to
          surface normals.</span></li>
      <li><span class="c6">turcolor -- turbulence noise applied
          to color.</span></li>
      <li><span class="c6">wood -- wood texture.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>mater
            region1 "plastic {tr 0.5 re 0.2}" 210 100 100
            0</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Set <i>region1</i> to use the
          plastic shader with 50% transparency, 20% reflectivity, a
          base color of (210 100 100), and inheritance set to
          0.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="matpick" id=
                                            "matpick"></a>matpick</b>
          <i>#</i>|<i>combination/member</i></span></dt>
      <dd class="c9"><span class="c16">The "matpick" command
          selects which matrix in the illuminated path should be
          edited. A number may be specified with 0 being the topmost
          selection. A combination/member may be specified to
          indicate that the matrix in combination that corresponds to
          member is to be edited. This command is only useful in
          matrix edit mode at the point where the user is selecting
          which matrix in the illuminated path should be edited. It
          is used internally by MGED; the user should generally use
          the mouse to make this selection.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>matpick group1/region3</b></span></dd>
    </dl>
    <p><span class="c6">-- Select the matrix for <i>region3</i>
        in <i>group1</i> for editing.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mirface" id=
                                            "mirface"></a>mirface</b> <i>####
            x</i>|<i>y</i>|<i>z</i></span></dt>
      <dd class="c9"><span class="c16">The "mirface" command
          modifies an <a href="#ARB">ARB</a> shape by mirroring the
          indicated face along the selected x, y, or z axis. An ARB
          shape must be selected for editing. Not all faces of all
          ARB types may be edited using this command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>mirface 1234 x</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Modify currently edited <i>ARB</i>
          by moving the face opposite face 1234 such that it is the
          mirror image of face 1234 across the <i>yz</i>
          plane.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mirror" id=
                                            "mirror"></a>mirror</b> <i>old_object new_object
            x</i>|<i>y</i>|<i>z</i></span></dt>
      <dd class="c9"><span class="c16">The "mirror" command
          creates new_object by duplicating old_object and reflecting
          it along the indicated axis. If old_object is a <a href=
                                                             "#SOLID">primitive shape</a>, then a new shape is created,
          with parameters adjusted to accomplish the mirror
          operation. If old_object is a combination, then new_object
          will simply be a copy of old_object with all of its
          members� matrices set to perform the appropriate
          reflection.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>mirror
            shape1 shape1_mirror x</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Make a copy of <i>shape1</i>, name
          it <i>shape1_mirror</i>, and adjust its parameters so that
          it is a mirror image of <i>shape1</i> across the <i>yz</i>
          plane.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mrot" id=
                                            "mrot"></a>mrot</b> <i>x y z</i></span></dt>
      <dd class="c9"><span class="c16">Rotate the view using
          model x y z.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>mrot 0
            0 10</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate the view about the model
        <i>z</i> axis by 10˚.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mv" id=
                                            "mv"></a>mv</b> <i>old_name new_name</i></span></dt>
      <dd class="c9"><span class="c16">The "mv" command changes
          the name of old_name to new_name. Note that this does not
          change any references to old_name that may appear in other
          <a href="#COMBINATION">combinations</a> in the database.
          The <a href="#mvall">mvall</a> command will change an
          object�s name everywhere.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>mv
            shapea shapeb</b></span></dd>
    </dl>
    <p><span class="c6">-- Change the name of <i>shapea</i> to
        <i>shapeb.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mvall" id=
                                            "mvall"></a>mvall</b> <i>old_name new_name</i></span></dt>
      <dd class="c9"><span class="c16">The "mvall" command
          changes the name of old_name to new_name. This will also
          change any references to old_name that may appear in other
          <a href="#COMBINATION">combinations</a> in the database.
          The <a href="#mv">mv</a> command will change an object�s
          name without changing references to it. The <a href=
                                                         "#prefix">prefix</a> command will also change the names and
          references of objects.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>mvall
            shapea shapeb</b></span></dd>
    </dl>
    <p><span class="c6">-- Change the name of <i>shapea</i> to
        <i>shapeb</i> everywhere it occurs in the
        database.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="nirt" id=
                                            "nirt"></a>nirt</b> [<i>nirt_args</i>]</span></dt>
      <dd class="c9"><span class="c6">The "nirt" command runs the
          <i>nirt</i> program that is distributed with <i>BRL-CAD</i>
          to intersect a single ray with the displayed objects. By
          default, <i>nirt</i> is run using the current database and
          the currently displayed objects, and it uses the current
          eye point as the ray start point and the current viewing
          direction as the ray direction. This effectively fires a
          ray at the center of the MGED display. The resulting
          collection of intersections between the ray and the objects
          is listed. Additional arguments may be supplied on the
          <i>nirt</i> command line. See the <i>man</i> page of
          <i>nirt</i> for more details.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>nirt</b></span></dd>
    </dl>
    <p><span class="c6">-- Fire a single ray through the center
        of the MGED display.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="nmg_collapse"
                                            id="nmg_collapse"></a>nmg_collapse</b> <i>old_nmg_shape
            new_nmg_shape maximum_error_dist
            [minimum_angle]</i></span></dt>
      <dd class="c9"><span class="c16">The "nmg_collapse" command
          simplifies an existing <a href="#NMG">nmg_shape</a> by a
          process of edge decimation. Each edge in the old_nmg_shape
          is considered; if it can be deleted without creating an
          error greater than the specified maximum_error_dist, then
          that edge is deleted. If a minimum_angle is specified
          (degrees), then the edge will not be deleted if it would
          create a triangle with an angle less than minimum_angle.
          The resulting shape is saved in new_nmg_shape. The
          old_nmg_shape must have been triangulated previous to using
          the nmg_collapse command. The resulting shape consists of
          all triangular faces.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>nmg_collapse nmg_old nmg_new 1.0 10.0</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2">-- Decimate edges in
            <i>nmg_old</i> to produce an NMG with an error no greater
            than 1.0</span> <a href="#units"><span class=
                                                   "c2">units</span></a><span class="c2">. The process will
            not create any triangles with an angle less than 10˚. The
            new NMG shape will be named
            <i>nmg_new</i>.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="nmg_simplify"
                                            id="nmg_simplify"></a>nmg_simplify</b>
          [<i>arb</i>|<i>tgc</i>|<i>poly</i>] <i>new_shape
            nmg_shape</i></span></dt>
      <dd class="c9"><span class="c16">The "nmg_simplify" command
          attempts to convert an existing <a href=
                                             "#NMG">nmg_shape</a> to a simpler <a href=
                                                                                  "#SOLID">primitive shape</a> type. The user may specify
          which type to attempt by including arb, tgc, or poly on the
          command line. If no shape type is specified, all will be
          attempted in the above order. If tgc is specified, the code
          will attempt to determine if the nmg_shape is an
          approximation of a <a href="#TGC">TGC</a>
          shape.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>nmg_simplify poly shapea.poly shapea.nmg</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2">-- Convert the
            <i>NMG</i> shape named <i>shapea.nmg</i> to a</span>
          <a href="#PG"><span class="c2">polysolid</span></a>
          <span class="c2">named
            <i>shapea.poly.</i></span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="oed" id=
                                            "oed"></a>oed</b> <i>path_lhs path_rhs</i></span></dt>
      <dd class="c9"><span class="c16">The "oed" command places
          MGED directly into the matrix edit mode. The path_rhs must
          be a path to a <a href="#SOLID">primitive shape</a>, and
          path_lhs must be a path to a combination that includes the
          first component of path_rhs as one of its members. Also,
          path_rhs/path_lhs must be a path that is currently
          displayed in mged. The edited matrix will be the matrix in
          the final component of path_lhs that corresponds to the
          first component of path_rhs. The last component in path_rhs
          is used as the reference shape during object
          editing.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>oed
            group1/group2 region1/shapea</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Place MGED into matrix edit mode,
          editing the matrix in <i>group2</i> that corresponds to
          <i>region1</i>, using <i>shapea</i> as the reference
          shape.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="opendb" id=
                                            "opendb"></a>opendb</b> [<i>database.g</i>]</span></dt>
      <dd class="c9"><span class="c6">The "opendb" command closes
          the current database file and opens <i>database.g</i>. If
          <i>database.g</i> is not found, the current database is
          left open. If <i>database.g</i> is not specified on the
          command line, the name of the current database file is
          returned.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>opendb
            model.g</b></span></dd>
    </dl>
    <p><span class="c6">-- Close the current database file and
        open <i>model.g.</i></span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>opendb</b><br>
            -- Return the name of the current database
            file.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="orientation"
                                            id="orientation"></a>orientation</b> <i>x y z
            w</i></span></dt>
      <dd class="c9"><span class="c16">The "orientation" command
          sets the view direction for MGED from the <a href=
                                                       "#QUATERNION">quaternion</a> specified on the command
          line.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt>
          <b>orientation 1 0 0 0</b></span></dd>
    </dl>
    <p><span class="c16">-- Set viewing direction to
        bottom.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="orot" id=
                                             "orot"></a>orot</b> [<i>-i</i>] <i>xdeg ydeg
            zdeg</i></span></dt>
      <dd class="c9"><span class="c16">The "orot" command
          performs a rotation of an object during matrix edit. The
          rotation is performed, in order: xdeg about the x axis,
          then ydeg about the y axis, and finally zdeg about the z
          axis. If the -i flag is given, then the angles are
          interpreted as increments to the last object rotation. The
          <a href="#rotobj">rotobj</a> command is a synonym for
          orot.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>orot 0
            0 35</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate currently edited object by 35˚
        about the Z-axis from the original orientation.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="oscale" id=
                                          "oscale"></a></span></dt>
      <dt class="c8"><span class="c6"><b>oscale</b>
          <i>scale_factor</i></span></dt>
      <dd class="c9"><span class="c16">The "oscale" command of
          matrix edit mode modifies the matrix to perform a uniform
          scale operation. A scale_factor of 2 doubles the size of
          the associated object, and a scale_factor of 0.5 reduces it
          by half.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>oscale
            3</b></span></dd>
    </dl>
    <p><span class="c6">-- Increase the size of the currently
        edited object by a factor of 3.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="overlay" id=
                                            "overlay"></a>overlay</b> <i>plot_file</i>
          [<i>name</i>]</span></dt>
      <dd class="c9"><span class="c6">The "overlay" command plots
          the specified UNIX <i>plot_file</i> in the MGED display.
          Phony object names are created for each part of the plot
          file that is in a unique color. The names are created by
          adding a color to the specified <i>name</i>, or to
          "_PLOT_OVER" if no name is provided. The color suffix is
          built by converting the <a href="#RGB">RGB</a> color to a
          six digit hex number. Each color corresponds to 2 hex
          digits, so that white becomes "ffffff, " red becomes
          "ff0000, " green is "00ff00, " etc.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>overlay plot.upl tmp</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Plot the Unix plot file
          <i>plot.upl</i> in the MGED display, using <i>tmp</i> as
          the base for the phony object names.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="p" id=
                                            "p"></a>p</b> <i>value1</i> [<i>value2
            value3</i>]</span></dt>
      <dd class="c9"><span class="c6">The "p" command provides
          precise control over primitive editing operations that
          would normally be done using the mouse or knobs. For
          example, a shape rotate may be performed by selecting
          <i>rotate</i> from the primitive edit menu, then providing
          the rotation angles with the <i>p</i> command. A command of
          "p 0 30 0" would rotate the edited shape through 30˚ about
          the <i>y</i> axis. Similarly, many of the individual
          parameters of the edited shape may be set exactly using the
          <i>p</i> command. If the <i>scale H</i> menu item is
          selected while editing a <a href="#TGC">TGC</a>, then the
          <i>value1</i> supplied with a <i>p</i> command specifies
          the actual length of the height vector for that <i>TGC</i>.
          This method is the recommended technique to set precise
          values for shape parameters. The <a href=
                                              "#translate">translate</a> and <a href="#rotobj">rotobj</a>
          commands provide a similar capability for object
          editing.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>p
            30</b></span></dd>
    </dl>
    <p><span class="c6"><span class="c2">-- Set the currently
          selected shape parameter of the currently edited shape to
          30</span> <a href="#units"><span class=
                                           "c2">units</span></a><span class="c2">.</span></span></p>
    <p><span class="c12"><a name="pathlist" id=
                            "pathlist"></a></span></p>
    <hr class="c3">
    <p><span class="c6"><b>pathlist</b>
        &lt;<i>combinations</i>&gt;</span></p>
    <dl>
      <dd class="c9"><span class="c6">The "pathlist" command
          lists all existing paths that start from the specified
          <a href="#COMBINATION">combinations</a> and end at a
          <a href="#SOLID">primitive shape</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>pathlist group1 region2</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List all existing paths that start
          from the <i>combinations</i> <i>group1</i> and
          <i>region2</i> and end at <i>primitive
            shapes.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="paths" id=
                                            "paths"></a>paths</b> <i>path_start</i></span></dt>
      <dd class="c9"><span class="c16">The "paths" command lists
          all existing paths that start from the specified path_start
          and end at a <a href="#SOLID">primitive shape</a>. The
          path_start may be specified by "/" separated components, or
          they may be separated by spaces (but not both).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>paths
            group1 region2</b></span></dd>
    </dl>
    <p><span class="c6">-- List all existing paths that start
        from <i>group1/region2</i> and end at a <i>primitive
          shape.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="permute" id=
                                            "permute"></a>permute</b> <i>tuple</i></span></dt>
      <dd class="c9"><span class="c16">The "permute" command
          permutes the vertex labels for the face of an <a href=
                                                           "#ARB">ARB</a> shape that is currently being edited. The
          tuple indicates which face is affected and also indicates
          the desired result. The tuple is formed by concatting the
          list of vertex numbers for the face in the order desired
          such that the first vertex listed will become vertex number
          one (and therefore the default <a href=
                                            "#keypoint">keypoint</a>). Only a sufficient number of
          vertices to disambiguate need be included in the tuple.
          Note that this has no effect on the geometry of the ARB,
          but may affect any texture mapping involving this
          shape.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>permute 321</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Rearrange the vertices of the
          currently edited <i>ARB</i> such that vertex #3 becomes
          vertex #1, vertex #2 remains #2, and vertex #1 becomes
          #3.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="plot" id=
                                            "plot"></a>plot</b> [<i>-float</i>] [<i>-zclip</i>]
          [<i>-2d</i>] [<i>-grid</i>] <i>out_file</i> | "|"
          <i>filter</i></span></dt>
      <dd class="c9"><span class="c16">The "plot" command creates
          a UNIX plot of the current MGED display. If an output_file
          is specified, the plot is stored in that file. If a filter
          is specified, the output is sent to that filter. The -float
          option requests a plot file with real numbers rather than
          integers. The -zclip option requests that the plot be
          clipped to the viewing cube in the Z-direction. The -2d
          option requests a two-dimensional plot (the default is 3D).
          The -grid option is intended to include a grid in the plot,
          but is currently not implemented. This command does not use
          the dm-plot display manager. The <a href="#pl">pl</a>
          command performs the same function, but does use the
          dm-plot display manager.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>plot
            -float | pldebug</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Create a UNIX plot of the current
          MGED display and pipe the results to the <i>pldebug</i>
          command.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="prcolor" id=
                                          "prcolor"></a><b>prcolor</b></span></dt>
      <dd class="c9"><span class="c12">The "prcolor" command lists the
          entries in the <a href="#IDENT">ident</a>-based color
          table. The ident number for a displayed <a href=
                                                     "#REGION">region</a> is used to find the appropriate color
          from the lookup table. The <i>low</i> and <i>high</i> values
          are the limits of region ident numbers to have the
          indicated <i>r g b</i> color (0-255) applied. The color
          table entries may be modified using
          the <a href="#color">color</a> command, and the entire color
          table may be edited using the <a href=
                                           "#edcolor">edcolor</a> command. If a color lookup table
          exists, its entries will override any color assigned using
          the <a href= "#mater">mater</a> command.</span></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="prefix" id=
                                            "prefix"></a>prefix</b> <i>new_prefix</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "prefix" command changes
          the name of all the <i>objects</i> listed by adding the
          specified <i>new_ prefix</i>. All references to the
          <i>objects</i> will also be changed. The <a href=
                                                      "#mvall">mvall</a> command performs a similar
          function.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>prefix
            test_ group1 regiona shapeb</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Change the names of objects <i>group1,
            regiona</i>, and <i>shapeb</i> to "test_group1, "
          "test_regiona, " and "test_shapeb." All references to these
          objects will reflect the new names.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="press" id=
                                            "press"></a>prj_add</b> <i>[-t] [-b] [-n] shaderfile
            [image_file] [image_width] [image_height]</i></span></dt>
      <dd class="c9"><span class="c6">The "prj_add" command appends
          information to the specified <i>shaderfile</i>. The information
          appended is in the form required by the "projection" shader
          (<i>prj</i>) and includes the <i>image_file</i> (typically a
          "pix" file), the image_width and image_height, and current view
          parameters from the MGED display. The resulting
          <i>shaderfile</i> may then be used as the parameter to the
          <i>prj</i> shader. Before executing this command, the region
          wireframe display in MGED should be aligned with the
          <i>image_file</i> (underlaid in MGED�s framebuffer) and the
          <i>image_file</i> should have the same height and width as the
          mged display. The <i>-t</i> option indicates that the image
          should be projected through the object. The <i>-n</i> option
          requests that antialiasing not be done.</span></dd>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b>press</b>
        <i>button_label</i></span></dt>
    <dd class="c9"><span class="c16">The "press" command simulates
        the pressing of a button. All of these button actions can be
        run directly as a command. The button_label indicates which
        button to simulate. The available buttons are:</span></dd>
    <ul>
      <li><span class="c6">help -- Provide a list of the available
          <i>button_labels.</i></span></li>
      <li><span class="c6"><span class="c2">35, 25 -- Switch to a view
            from an</span> <a href="#AZIMUTH"><span class=
                                                    "c2">azimuth</span></a> <span class="c2">of 35˚ and an</span>
          <a href="#ELEVATION"><span class="c2">elevation</span></a>
          <span class="c2">of 25˚.</span></span></li>
      <li><span class="c6"><span class="c2">45, 45 -- Switch to a view
            from an</span> <a href="#AZIMUTH"><span class=
                                                    "c2">azimuth</span></a> <span class="c2">of 45˚ and an</span>
          <a href="#ELEVATION"><span class="c2">elevation</span></a>
          <span class="c2">of 45˚.</span></span></li>
      <li><span class="c6">accept -- Simulate the <i>accept</i>
          button (accepts edits and writes the edited object to the
          database).</span></li>
      <li><span class="c6">reject -- Simulate the <i>reject</i>
          button (discards edits).</span></li>
      <li><span class="c6">reset -- Resets view to <i>top</i> and
          resizes such that all displayed objects are within the
          view.</span></li>
      <li><span class="c6">save -- Remember the current view aspect
          and size.</span></li>
      <li><span class="c6">restore -- Restore the most recently saved
          view.</span></li>
      <li><span class="c6"><span class="c2">adc -- Toggle display of
            the</span> <a href="#adc"><span class=
                                            "c2">adc</span></a><span class="c2">.</span></span></li>
      <li><span class="c6"><span class="c2">front -- Switch to view
            from the front (synonym for</span> <a href="#ae"><span class=
                                                                   "c2">ae</span></a> <span class="c2">0 0).</span></span></li>
      <li><span class="c6"><span class="c2">left -- Switch to view
            from the left (synonym for</span> <a href="#ae"><span class=
                                                                  "c2">ae</span></a> <span class="c2">90 0).</span></span></li>
      <li><span class="c6"><span class="c2">rear -- Switch to view
            from the rear (synonym for</span> <a href="#ae"><span class=
                                                                  "c2">ae</span></a> <span class="c2">180 0).</span></span></li>
      <li><span class="c6"><span class="c2">right -- Switch to view
            from the right (synonym for</span> <a href="#ae"><span class=
                                                                   "c2">ae</span></a> <span class="c2">270 0).</span></span></li>
      <li><span class="c6"><span class="c2">bottom -- Switch to view
            from the bottom (synonym for</span> <a href="#ae"><span class=
                                                                    "c2">ae</span></a> <span class="c2">-90
            -90).</span></span></li>
      <li><span class="c6"><span class="c2">top -- Switch to view
            from the top (synonym for</span> <a href="#ae"><span class=
                                                                 "c2">ae</span></a> <span class="c2">-90 90).</span></span></li>
      <li><span class="c6">oill -- Enter object illuminate
          mode.</span></li>
      <li><span class="c6">orot -- Enter object rotate mode (must
          already be in matrix edit mode).</span></li>
      <li><span class="c6">oscale -- Enter object scale mode (must
          already be in matrix edit mode).</span></li>
      <li><span class="c6">oxscale -- Enter object scale (x-direction
          only) mode (must already be in matrix edit mode).</span></li>
      <li><span class="c6">oyscale -- Enter object scale (y-direction
          only) mode (must already be in matrix edit mode).</span></li>
      <li><span class="c6">ozscale -- Enter object scale (z-direction
          only) mode (must already be in matrix edit mode).</span></li>
      <li><span class="c6">oxy -- Enter object translate mode (must
          already be in matrix edit mode).</span></li>
      <li><span class="c6">ox -- Enter object translate (horizontal
          only) mode (must already be in matrix edit mode).</span></li>
      <li><span class="c6">oy -- Enter object translate (vertical
          only) mode (must already be in matrix edit mode).</span></li>
      <li><span class="c6">sill -- Enter solid (i.e., primitive)
          illuminate mode.</span></li>
      <li><span class="c6">sedit -- (deprecated) Enter primitive edit
          mode.</span></li>
      <li><span class="c6">srot -- Enter solid (i.e., primitive)
          rotate mode (must be in primitive edit mode).</span></li>
      <li><span class="c6">sscale -- Enter solid (i.e., primitive)
          scale mode (must be in primitive edit mode).</span></li>
      <li><span class="c6">sxy -- Enter solid (i.e., primitive)
          translate mode (must be in primitive edit mode).</span></li>
      <li><span class="c6">zoomin -- Zoom in, synonym for zoom
          2.</span></li>
      <li><span class="c6">zoomout -- Zoom out, synonym for zoom
          0.5.</span></li>
      <li><span class="c6">rate -- Toggle between rate and absolute
          mode for knobs and sliders.</span></li>
      <li><span class="c6">edit � (deprecated) Toggle between edit
          and view modes for knobs and sliders (useful during editing to
          allow the knobs and sliders to be used for either editing
          operations (in edit mode) or to adjust the view without
          affecting the edited object (in view mode).</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>press
            top</b></span></dd>
    </dl>
    <p><span class="c6">-- Switch to view from the top
        direction.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="preview" id=
                                            "preview"></a>preview</b> [<i>-v</i>] [<i>-d delay</i>] [<i>-D
            start_frame_number</i>] [<i>-K end_frame_number</i>]
          <i>rt_script_file</i></span></dt>
      <dd class="c9"><span class="c16">The "preview" command allows
          the user to preview animation scripts in MGED. The -d option
          provides a delay in seconds to be applied between each frame
          (the default is no delay). The -D option allows the user to
          specify a starting frame number, and the -K option allows the
          specification of an ending frame number. The -v flag indicates
          that the objects displayed in the MGED graphics window should
          be displayed in "evaluated" mode, as would be the result of the
          <a href="#ev">ev</a> command. Note that this may significantly
          slow the preview.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>preview -D
            101 -K 237 script.rt</b></span></dd>
      <dd class="c9"><span class="c12">-- <i>Preview</i> the
          animation script stored in the file named <i>script.rt</i> from
          frame number 101 through frame number 237.</span></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="prj_add" id=
                                          "prj_add"></a></span></dt>
      <dt class="c8"><span class="c6"><b>prj_add</b>
          <i>shaderfile</i> [<i>image_file</i>] [<i>image_width</i>]
          [<i>image_height</i>]</span></dt>
      <dd class="c9"><span class="c6">The "prj_add" command appends
          information to the specified <i>shaderfile</i>. The information
          appended is in the form required by the "projection" shader
          (<i>prj</i>) and includes the <i>image_file</i> (typically a
          "pix" file), the <i>image_width</i> and <i>image_height</i>,
          and current view parameters from the MGED display. The
          resulting <i>shaderfile</i> may then be used as the parameter
          to the <i>prj</i> shader. Before executing this command, the
          region wireframe display in MGED should be aligned with the
          <i>image_file</i> (underlaid in MGED�s framebuffer), and the
          <i>image_file</i> should have the same height and width as the
          MGED display.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="ps" id=
                                            "ps"></a>ps</b> [<i>-f font</i>] [<i>-t title</i>] [<i>-c
            creator</i>] [<i>-s size_in_inches</i>] [<i>-l line_width</i>]
          <i>output_file</i></span></dt>
      <dd class="c9"><span class="c16">The "ps" command temporarily
          attaches the Postscript display manager and outputs the current
          MGED display to the specified output_file in PostScript format.
          The -f option allows the font to be user-specified. The -t
          option allows the user to provide a title (the default is "No
          Title"). The -c option allows the user to specify the creator
          of the file (the default is "LIBDM dm-ps"). The �s specifies
          the size of the drawing in inches. The �l specifies the width
          of the lines drawn.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>ps -t
            "Test Title" test.ps</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Place a <i>PostScript</i> version of the
          current MGED display in a file named <i>test.ps</i> and give it
          the title "Test Title."</span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>ps -l 10 -t "Test Fat
              Lines" fat_lines.ps</b><br>
            -- This time use fat lines.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="pull" id=
                                            "pull"></a>pull</b> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "pull" command pulls the
          effects of all transformation matrices that appear in any
          <a href="#SOLID">primitive shapes</a> or <a href=
                                                      "#COMBINATION">combinations</a> in the trees up to the
          specified <i>objects</i> heading the tree. This will restore
          the original the parameters of the <i>primitive shapes</i> if
          any of the transformation matrices are not identity matrices.
          All the transformation matrices visited up the tree will be set
          to the current transformation matrix. This command will fail,
          and no changes will be made, if the head is referenced by a
          <i>primitive shape</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>pull
            group1 regiona</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Pull the effects of any transformation
          matrices from the <i>primitive shapes.</i> in the trees up to
          the heads indicated by <i>group1</i> and
          <i>regiona</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="push" id=
                                            "push"></a>push</b> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "push" command forces the
          effects of all transformation matrices that appear in any
          <a href="#COMBINATION">combinations</a> in the trees from the
          specified <i>objects</i> down to the <a href="#SOLID">primitive
            shapes</a>. This will change the parameters of the <i>primitive
            shapes</i> if any of the transformation matrices are not
          identity matrices. All the transformation matrices visited will
          be set to identity matrices. This command will fail, and no
          changes will be made, if any <i>primitive shape</i> referenced
          by the list of <i>objects</i> is positioned differently in two
          or more <i>combinations</i>. The <a href="#xpush">xpush</a>
          command will perform a similar function, even if some shapes
          are multiply referenced.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>push
            group1 regiona</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Push the effects of any transformation
          matrices in the trees headed by <i>group1</i> and
          <i>regiona</i> down to the <i>primitive shapes.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="putmat" id=
                                            "putmat"></a>putmat</b> <i>comb_name/member_name</i> {<i>I</i>
          | <i>m0 m1 m2 m3 ... m16</i>}</span></dt>
      <dd class="c9"><span class="c6">The "putmat" command replaces
          the existing transformation matrix in the combination specified
          that corresponds to the <a href="#MEMBER">member</a> specified.
          The transformation matrix may be specified with an "I" to
          indicate the identity matrix, or it may be specified as 16
          elements listed row-by-row. The <a href="#copymat">copymat</a>
          command allows the user to copy an existing transformation
          matrix.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>putmat
            group1/regiona I</b></span></dd>
    </dl>
    <p><span class="c6">-- Set the transformation matrix for
        <i>regiona</i> in <i>group1</i> to the identity
        matrix.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="q" id=
                                          "q"></a><b>q</b></span></dt>
      <dd class="c9"><span class="c12">The "q" command ends the MGED
          process. Note that there is no write database command in MGED.
          All changes are made to the database as the user performs them.
          Therefore, a <i>q</i> command will not restore the database to
          its pre-edited state. This is a synonym for the <a href=
                                                             "#quit">quit</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>q</b></span></dd>
    </dl>
    <p><span class="c12">-- Quit the current MGED session.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="qorot" id=
                                            "qorot"></a>qorot</b> <i>x y z dx dy dz angle</i></span></dt>
      <dd class="c9"><span class="c16">The "qorot" command rotates an
          object through the specified angle (in degrees). This command
          requires that MGED already be in matrix edit mode. The edited
          object is rotated about the axis defined by the start point (x
          y z) and the direction vector (dx dy dz).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>qorot 1 2
            3 0 0 1 25</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Rotate the currently edited object
          through 25 degrees about the axis through the point (1, 2, 3)
          and in the Z-direction.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="qray" id=
                                            "qray"></a>qray</b> [<i>subcommand</i>]</span></dt>
      <dd class="c9"><span class="c6">Get/set <i>query ray</i>
          characteristics. Without a subcommand, the usage message is
          printed. The <i>qray</i> command accepts the following
          subcommands:</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">vars</span></dt>
      <dd class="c9"><span class="c12">Print a list of all query ray
          variables.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>basename</b>
          [<i>str</i>]</span></dt>
      <dd class="c9"><span class="c6">If <i>str</i> is specified,
          then set basename to <i>str</i>. Otherwise, return the
          basename. Note that the basename is the name used to create the
          fake shape names corresponding to the query ray. There will be
          one fake shape for every color used along the ray.</span></dd>
      <dt class="c8"><span class="c6"><b>effects</b>
          [<i>t|g|b</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the type of
          <i>effects</i> that will occur when firing a query ray. The
          effects of firing a ray can be either <i>t</i> for textual
          output, <i>g</i> for graphical output or <i>b</i> for both
          textual and graphical.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>echo</b>
          [<i>0|1</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the value of
          <i>echo</i>. If set to 1, the actual nirt command used will be
          echoed to the screen.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>oddcolor</b> [<i>r g
            b</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the color of odd
          partitions.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>evencolor</b> [<i>r g
            b</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the color of even
          partitions.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>voidcolor</b> [<i>r g
            b</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the color of areas
          where the ray passes through nothing.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>overlapcolor</b> [<i>r g
            b</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the color of areas
          that overlap.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>fmt</b> [<i>r|h|p|f|m|o</i>
          [<i>str</i>]]</span></dt>
      <dd class="c9"><span class="c6">Set or get the format
          string(s). See the <i>man</i> page of <i>nirt</i> for more
          details.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>script</b>
          [<i>str</i>]</span></dt>
      <dd class="c9"><span class="c6">Set or get the nirt script
          string.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">help</span></dt>
      <dd class="c9"><span class="c12">Print the usage
          message.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>qray</b></span></dd>
    </dl>
    <p><span class="c12">-- Print usage message.</span></p>
    <div class="c7">
      <p><span class="c12"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>qray fmt o</b><br>
            -- Returns the overlap format string.</span></span></p>
      <p><span class="c6"><span class="c12"><br></span>
          <b><tt>mged&gt; </tt><span class="c2"><b>qray oddcolor</b><br>
              -- Returns the rgb color used to color odd
              partitions.</span></b></span></p>
      <p><span class="c6"><span class="c12"><br></span>
          <b><tt>mged&gt; </tt><span class="c2"><b>qray oddcolor 255 0
                0</b><br>
              -- Sets the odd partition color to red.</span></b></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="query_ray" id=
                                            "query_ray"></a>query_ray</b> [<i>nirt_args</i>]</span></dt>
      <dd class="c9"><span class="c6">The "query_ray" command runs
          the <i>nirt</i> program that is distributed with <i>BRL-CAD</i>
          to intersect a single ray with the displayed objects. By
          default, <i>nirt</i> is run using the current database and the
          currently displayed objects and uses the current eye point as
          the ray start point and the current viewing direction as the
          ray direction. This effectively fires a ray at the center of
          the MGED display. The resulting list of intersections between
          the ray and the objects is given. Additional arguments may be
          supplied on the <i>nirt</i> command line. See the <i>man</i>
          page of <i>nirt</i> for more details.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>query_ray</b></span></dd>
    </dl>
    <p><span class="c6">-- Fire a single ray through the center of
        the MGED display.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="quit" id=
                                          "quit"></a><b>quit</b></span></dt>
      <dd class="c9"><span class="c12">The "quit" command ends the
          MGED process. Note that there is no write database command in
          MGED. All changes are made to the database as the user performs
          them. Therefore, a <i>quit</i> command will not restore the
          database to its pre-edited state. This is a synonym for the
          <a href="#q">q</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>quit</b></span></dd>
    </dl>
    <p><span class="c12">-- Quit the current MGED session.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="qvrot" id=
                                            "qvrot"></a>qvrot</b> <i>dx dy dz angle</i></span></dt>
      <dd class="c9"><span class="c16">The "qvrot" command adjusts
          the current MGED viewing direction such that the eye is
          positioned along the direction vector (dx dy dz) from the view
          center and is looking towards the view center. The angle (in
          degrees) allows for a twist about the viewing direction. The
          <a href="#ae">ae</a> command provides a similar
          capability.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>qvrot 0 0
            1 90</b></span></dd>
    </dl>
    <p><span class="c6"><span class="c2">-- Set the current view to
          the same as achieved by the</span> <a href="#press"><span class=
                                                                    "c2">press top</span></a> <span class=
                                                                                                    "c2">command.</span></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="r" id="r"></a>r</b>
          <i>region_name</i> &lt;<i>operation object</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "r" command creates a
          <a href="#REGION">region</a> with the specified
          <i>region_name</i>. The <i>region</i> is constructed using the
          list of <a href="#BOOLEAN">Boolean operations</a> and
          <i>object</i> pairs. The operators are represented by the
          single characters "+, " "-, " and "u" for intersection,
          subtraction, and union, respectively. The <i>object</i>
          associated with each operator may be a combination or a
          <a href="#SOLID">primitive shape</a>. No parentheses or any
          grouping indication is allowed in the <i>r</i> command. The
          operator hierarchy for the <i>r</i> command has been
          established through the ancestry of <i>BRL-CAD</i> and does not
          conform to accepted standards (see the <a href="#c">c</a>
          command for a more standard implementation). Intersection and
          subtraction operations are performed first, proceeding left to
          right; then union operations are performed. <i>BRL-CAD</i>
          regions are special cases of <i>BRL-CAD</i> <i>combinations</i>
          and include special attributes. Default values for these
          attributes may be set using the <a href="#regdef">regdef</a>
          command. As new <i>regions</i> are built, the default <a href=
                                                                   "#IDENT">ident</a> number gets incremented. If
          <i>region_name</i> already exists, then the
          <i>operation</i>/<i>object</i> pairs get appended to its
          end.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>r
            new_region u shape1 - shape2 u shape3 + group4</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Create a region named <i>new_region</i>
          that consists of two parts unioned together. The first part is
          <i>shape1</i> with <i>shape2</i> subtracted. The second part is
          the intersection of <i>shape3</i> and the combination
          <i>group4.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b>rcc-<a name="rccblend" id=
                                                "rccblend"></a>blend</b> <i>rccname newname thickness
            [b|t]</i></span></dt>
      <dd></dd>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c16">The "rcc-blend" command
                generates a blend at an end (base [b] or top [t]) of the
                specified <a href="#IDENT">RCC</a> shape. The thickness
                is the radius of the <a href="#IDENT">TOR</a> curvature.
                The blend is saved as a region made up of an RCC and a
                TOR. The default end is the base.</span></dt>
          </dl>
        </div>
      </dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt><b>rcc-blend
            rcc.s blend.s 10</b></span></dd>
      <dt class="c8"><span class="c12">-- Create a region named
          <i>blend.s</i> that extends 10 units from the base of
          <i>rcc.s</i>.</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt><b>rcc-blend
            rcc.s blend.s 10 t</b></span></dd>
      <dt class="c8"><span class="c12">-- Create a region named
          <i>blend.s</i> that extends 10 units from the top of
          <i>rcc.s</i>.</span></dt>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><span class="c6">
            <a name= "rcccap"
               id="rcccap"></a><b>rcc-cap</b> <i>rccname
            newname [height] [b|t]</i></span></span></dt>
    <dd class="c9"><span class="c16">The "rcc-cap" command is used
        to round the end of a cylinder with an ellipsoid. It creates an
        <a href="#IDENT">ELL</a> shape with the given height at one end
        (base [b] or top [t]) of the specified <a href=
                                                  "#IDENT">RCC</a>. If the height option is not specified, a
        spherical cap will be generated. The default end is the
        base.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rcc-cap
          rcc.s cap.s 20</b></span></dd>
    <dd class="c9"><span class="c12">-- Create an ELL shape named
        <i>cap.s</i> with a radius of 20 units at the base of
        rcc.s<i>.</i></span></dd>
    <dt class="c8"><span class="c18">&nbsp;</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c18"><tt>mged&gt; </tt><b>rcc-cap
          rcc.s cap.s 20 t</b></span></dd>
    <dd class="c9"><span class="c16">-- Create an ELL shape named
        cap.s with a radius of 20 units at the top of
        rcc.s.</span></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="rcctgc" id=
                                          "rcctgc"></a>rcc-tgc</b> <i>rccname newname x y z
          [b|t]</i></span></dt>
    <dd></dd>
    <dd>
      <div class="c7">
        <dl>
          <dt class="c8"><span class="c16">The "rcc-tgc" command
              creates a <a href="#IDENT">TGC</a> shape with the
              specified apex (x y z) at one end (base [b] or top [t])
              of the specified <a href="#IDENT">RCC</a>. The default
              end is the base.</span></dt>
        </dl>
      </div>
    </dd>
    <dt class="c8"><span class="c12">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c12"><tt>mged&gt; </tt><b>rcc-tgc
          rcc.s tgc.s 0 2 4</b></span></dd>
    <dd class="c9"><span class="c12">-- Create a TGC shape named
        <i>tgc.s</i> with an apex at (0 2 4) from the base of
        <i>rcc.s</i>.</span></dd>
    <dt class="c8"><span class="c12">&nbsp;</span></dt>
    <dd></dd>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><span class="c6"><a name=
                                                           "rcctor" id="rcctor"></a>rcc-tor</span></b> <span class=
                                                                                                             "c16">rccname newname</span></span></dt>
    <dd></dd>
    <dd>
      <div class="c7">
        <dl>
          <dt class="c8"><span class="c16">The "rcc-tor" command is
              used to round the edges of the specified <a href=
                                                          "#IDENT">RCC</a> by creating a torus based on the
              parameters of that <a href="#IDENT">RCC</a>. The radius
              values of the <a href="#IDENT">RCC</a> must be greater
              than half its height.</span></dt>
          <dd></dd>
          <dt class="c8"><span class="c18">&nbsp;</span></dt>
        </dl>
      </div>
    </dd>
    <dt class="c8"><span class="c18">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c18"><tt>mged&gt; </tt><b>rcc-tor
          rcc.s tor.s</b></span></dd>
    <dd class="c9"><span class="c16">-- Create a TOR shape named
        <i>tor.s</i> using the parameters of <i>rcc.s</i>.</span></dd>
    <dt class="c8"><span class="c6">&nbsp;</span></dt>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="rcodes" id=
                                          "rcodes"></a>rcodes</b> <i>file_name</i></span></dt>
    <dd class="c9"><span class="c16">The "rcodes" command reads the
        specified file and assigns the region attributes to the
        <a href="#REGION">regions</a> listed. The file is expected to
        be in the format produced by the <a href="#wcodes">wcodes</a>
        command.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c16">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c16"><tt>mged&gt; </tt><b>rcodes
          region_codes</b></span></dd>

    <div class="c7">
      <p><span class="c16">-- Read the file named <i>region_codes</i>
          and set the region specific attributes according to the values
          found in the file.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="red" id=
                                             "red"></a>red</b> combination</span></dt>
      <dd class="c9"><span class="c16">The "red" command creates a
          file describing the specified combination and starts an editor
          for the user to modify the combination. The environment EDITOR
          variable will be used to select the editor. If EDITOR is not
          set, then /bin/ed will be used. All the attributes of BRL-CAD
          <a href="#REGION">regions</a> and combinations may be edited in
          this way. The region specific attributes will be ignored if the
          combination is not a region and is not set to be a region
          during editing. It is not necessary to be in an editing mode to
          run this command. The <a href="#rm">rm</a>, <a href="#r">r</a>,
          <a href="#comb">comb</a>, <a href="#c">c</a>, and <a href=
                                                               "#g">g</a> commands provide some basic combination editing
          capabilities.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>red
            group2</b></span></dd>
      <div class="c7">
        <p><span class="c6">-- Edit the combination <i>group2</i> with
            the user�s editor of choice.</span></p>
      </div>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="refresh" id=
                                          "refresh"></a><b>refresh</b></span></dt>
      <dd class="c9"><span class="c12">The "refresh" command updates
          the MGED display.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>refresh</b></span></dd>
    </dl>
    <p><span class="c12">-- Update the MGED display.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="regdebug" id=
                                            "regdebug"></a>regdebug</b> [<i>debug_level</i>]</span></dt>
      <dd class="c9"><span class="c6">The "regdebug" command with no
          options toggles the display manager debug flag. If a
          <i>debug_level</i> is supplied, then the display manager debug
          flag is set to that value.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>regdebug</b></span></dd>
    </dl>
    <p><span class="c6">-- Toggle the display manager debug
        flag.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="regdef" id=
                                            "regdef"></a>regdef</b> <i>item</i> [<i>air</i> [<i>los</i>
          [<i>material_code</i>]]]</span></dt>
      <dd class="c9"><span class="c6">The "regdef" command sets the
          default <a href="#REGION">region</a> attributes used by the
          <a href="#r">r</a> and <a href="#c">c</a> commands when
          building a <i>BRL-CAD</i> <i>region</i>. The default
          <i>ident</i> number is incremented each time a new
          <i>region</i> is created with the <i>r</i> or <i>c</i>
          commands.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>regdef
            1003 0 100 8</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2">-- Set the <i>region</i>
            default attributes to an</span> <a href="#IDENT"><span class=
                                                                   "c2">ident</span></a> <span class="c2">of 1003, an</span>
          <a href="#SPACE"><span class="c2">air code</span></a>
          <span class="c2">of 0, an</span> <a href="#LOS"><span class=
                                                                "c2">los</span></a> <span class="c2">of 100%, and a</span>
          <a href="#GIFTMAT"><span class="c2">material code</span></a>
          <span class="c2">of 8.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="regions" id=
                                          "regions"></a></span></dt>
      <dt class="c8"><span class="c6"><b>regions</b>
          <i>output_file</i> &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "regions" command creates a
          summary of all the <a href="#REGION">regions</a> in the
          specified list of <i>objects</i>. The summary is written in the
          specified <i>output_file</i>. The summary includes, for each
          <i>region</i>, a sequential region number, its <a href=
                                                            "#IDENT">ident</a>, <a href="#SPACE">air code</a>, <a href=
                                                                                                                  "#GIFTMAT">material code</a>, <a href="#LOS">los</a>, the path
          from one of the <i>objects</i> to the <i>region</i>, and the
          <a href="#BOOLEAN">Boolean</a> formula for the
          <i>region</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>regions
            regions_file group1 group2</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Place a summary of all the
          <i>regions</i> from <i>group1</i> and <i>group2</i> in the file
          named <i>regions_file.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="release" id=
                                            "release"></a>release</b> [<i>name</i>]</span></dt>
      <dd class="c9"><span class="c6">The "release" command is used
          to close a display manager. If invoked with no arguments, the
          current display manager is closed. Otherwise, <i>name</i>
          (i.e., the Tcl/Tk path name of the display manager window) is
          closed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>release</b></span></dd>
    </dl>
    <p><span class="c6">-- Close the current display
        manager.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>release .dm_X0</b><br>
            -- Close <i>.dm_X0.</i></span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="rfarb" id=
                                          "rfarb"></a><b>rfarb</b></span></dt>
      <dd class="c9"><span class="c12">The "rfarb" command creates a
          new <a href="#ARB">ARB8</a> shape based on rotation and
          fallback angles. The command prompts the user for all the
          required information. In addition to the name for the new shape
          and the rotation and fallback angles, the user is prompted for
          the coordinates of one corner of the <i>ARB8</i> and for two of
          the three coordinates of the other three vertices of one face
          of the <i>ARB8</i>. The other coordinate of each of these
          vertices is calculated in order to ensure that the face is
          planar. The user is then prompted for a thickness, and the
          first face is extruded normally by the specified thickness to
          complete the <i>ARB8</i>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>rfarb</b></span></dd>
    </dl>
    <p><span class="c12">-- Create a new <i>ARB8</i> shape according
        to arguments supplied in answer to prompts.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="rm" id=
                                          "rm"></a></span></dt>
      <dt class="c8"><span class="c6"><b>rm</b> <i>combination</i>
          &lt;<i>members</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "rm" command deletes all
          occurrences of the listed <a href="#MEMBER">members</a> from
          the specified combination. The <a href="#red">red</a>, <a href=
                                                                    "#r">r</a>, <a href="#comb">comb</a>, <a href="#c">c</a>, and
          <a href="#g">g</a> commands provide other <i>combination</i>
          editing capabilities.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rm group1
            regiona</b></span></dd>
    </dl>
    <p><span class="c6">-- Delete <i>regiona</i> from
        <i>group1.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rmater" id=
                                            "rmater"></a>rmater</b> <i>file</i></span></dt>
      <dd class="c9"><span class="c16">The "rmater" command reads the
          specified file and sets the combination<a href=
                                                    "#SHADER">shader</a>, <a href="#RGB">color</a>, and <a href=
                                                                                                           "#INHERITANCE">inheritance</a> values according to those listed
          in the file. The format of the file is expected to be as
          produced by the <a href="#wmater">wmater</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rmater
            mater_file</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Read the file named <i>mater_file</i>
          and set the <i>combination</i> attributes according to those
          listed in the file.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rot" id=
                                            "rot"></a>rot</b> <i>x y z</i></span></dt>
      <dd class="c9"><span class="c6">The "rot" command rotates the
          view or an object by <i>xyz</i> degrees. Exactly what is
          rotated and how it is rotated are dependent on MGED�s state as
          well as the state of the display manager. See <a href=
                                                           "#arot">arot</a> for a similar capability.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rot 0 0
            45</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate 45 degrees about the Z
        axis.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>rot 45 45 0</b><br>
            -- Rotate 45˚ about the <i>y</i> axis, then rotate 45 degrees
            about the <i>x</i> axis.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rotobj" id=
                                            "rotobj"></a>rotobj</b> [<i>-i</i>] <i>x-angle y-angle
            z-angle</i></span></dt>
      <dd class="c9"><span class="c16">The "rotobj" command rotates
          the currently edited object by z angle degrees about the z
          direction, y angle about the y direction, and x angle degrees
          about the x direction in that order. If an -i option is
          included, then the rotations are treated as increments to the
          previous rotations. MGED must be in the matrix edit mode for
          this command to be useful. The <a href="#p">p</a> command
          provides a similar capability for primitive
          editing.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rotobj 0 0
            25</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Rotate the currently edited object by 25
          degrees about the <i>z</i> direction from the original
          orientation.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rpparch" id=
                                            "rpparch"></a>rpp</b>-<b>arch</b> <i>rppname newname
            face</i></span></dt>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c6">The "rpp-arch" command is
                used to round a specified face of an <a href=
                                                        "#IDENT">RPP</a> by creating an <a href="#IDENT">RCC</a>
                based on the parameters of the RPP.</span></dt>
          </dl>
        </div>
      </dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rpp-arch
            rpp.s arch.s 1234</b></span></dd>
      <dd class="c9"><span class="c6">-- Create an RCC shape named
          <i>arch.s</i> at the 1234 face of the RPP<i>.</i></span></dd>
      <hr class="c3">
      <dd></dd>
      <dt class="c8"><span class="c6"><a name="rppcap" id=
                                            "rppcap"></a><b>rpp-cap</b> <i>rppname newname face height
            [0|1]</i></span></dt>
      <dd class="c9"><span class="c16">The "rpp-cap" command creates
          an <a href="#IDENT">ARB6</a> with the specified height at a
          particular face of the given <a href="#IDENT">RPP</a>. The
          optional "0" and "1" refer to the orientation of the ARB6. If
          "0" is chosen, the peaks of the ARB6 are positioned at the
          midpoint between the first and second points and at the
          midpoint between the third and fourth points of the specified
          face. If "1" is chosen, the peaks of the ARB6 are positioned at
          the midpoint between the first and fourth points and at the
          midpoint between the second and third points of the specified
          face. The default is 0.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt><b>rpp-cap
            rpp.s cap.s 1234 20</b></span></dd>
      <dd class="c9"><span class="c16">-- Create an ARB6 shape named
          <i>cap.s</i> that extends 20 units from the 1234 face of the
          RPP<i>.</i> The peaks of the ARB6 will be at the midpoint
          between point 1 and 2 and at the midpoint between 3 and
          4.</span></dd>
      <dt class="c8"><span class="c6">&nbsp;</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rcc-cap
            rcc.s cap.s 1234 20 1</b></span></dd>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c6">-- Create an ARB6 shape
                named <i>cap.s</i> that extends 20 units from the 1234
                face of the RPP. The peaks of the ARB6 will be at the
                midpoint between point 1 and 4 and at the midpoint
                between 2 and 3.</span></dt>
          </dl>
        </div>
      </dd>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="rrt" id=
                                          "rrt"></a>rrt</b> <i>program</i> [<i>options</i>]</span></dt>
    <dd class="c9"><span class="c6">The "rrt" command executes the
        specified <i>program</i> with the provided <i>options</i> and
        includes the current database name and the list of currently
        displayed objects on the command line. This command effectively
        executes:</span></dd>
    <pre class="c21"><span class="c6">        <i>program options database_name objects.
    </i></span></pre>
    <div class="c7">
      <p><span class="c6"><span class="c2">The <i>rrt</i> command
            also provides the current MGED viewing parameters to the
            <i>program</i> on standard input. Many <i>BRL-CAD</i> programs
            use the <i>-M</i> option to indicate that viewing parameters
            will be provided on standard input. The</span> <a href=
                                                              "#rt"><span class="c2">rt</span></a> <span class="c2">command
            can be simulated with <i>rrt</i> as:</span></span></p>
    </div>
    <pre class="c21"><span class=
                           "c6">        <i>rrt /usr/brlcad/bin/rt -M -s50
    </i></span></pre>
    <div class="c7">
      <p><span class="c6">provided that perspective is not currently
          being used. Any executable routine may be run using <i>rrt</i>;
          however, it will always be run with the provided <i>options</i>
          followed by the current database name and the list of currently
          displayed objects.</span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rrt
            echo</b></span></dd>
    </dl>
    <p><span class="c6">-- Will list the current database name and
        the list of currently displayed objects.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rt" id=
                                            "rt"></a>rt</b> [<i>options</i>] [--
          <i>objects</i>]</span></dt>
      <dd class="c9"><span class="c6">The "rt" command executes the
          <i>BRL-CAD</i> <i>rt</i> program with the default options
          of<br>
          "-s50 �M." If perspective is turned on, then the <i>-p</i>
          option will be included with the value of the perspective
          angle. The current database name is added to the end of the
          <i>rt</i> command line along with either the specified
          <i>objects</i> or, if none is specified, the list of currently
          displayed objects. The <i>rt</i> program is written such that
          options may be repeated, and the last occurrence of an option
          will override any earlier occurrences. This allows the user to
          specify other <i>size</i> (<i>-s</i>) options. The <a href=
                                                                "#rrt">rrt</a> command performs a similar function, but may be
          used to execute other programs as well. The <i>-M</i> option
          tells <i>rt</i> to read the viewing parameters from standard
          input. See the <i>man</i> page on <i>rt</i> for details. A
          related command is <a href="#saveview">saveview</a>, which can
          be used to create a shell script (batch job) to raytrace this
          view in the background.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rt -s1024
            -F/dev/Xl</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Run the <i>rt</i> program to produce a
          color-shaded image of the current view in the MGED display. The
          image will be 1024 pixels square and will be displayed on a
          lingering <i>X</i> framebuffer.</span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>rt -C 200/200/255 --
              roof</b><br>
            -- Run the <i>rt</i> program to produce a color-shaded image of
            the object <i>roof</i> using MGED�s current viewing parameters.
            The image will have a sky-blue background and will be displayed
            on the framebuffer specified by the FB_FILE shell
            variable.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="rtcheck" id=
                                            "rtcheck"></a>rtcheck</b> [<i>options</i>]</span></dt>
      <dd class="c9"><span class="c6">The "rtcheck" command executes
          the <i>BRL-CAD</i> <i>rtcheck</i> program with the default
          options of "-s50 �M." The <i>-M</i> option tells <i>rtcheck</i>
          to read the viewing parameters from standard input so that rays
          are only fired from the current view. The current database name
          and the list of currently displayed objects are added to the
          end of the <i>rtcheck</i> command line. The <i>rtcheck</i>
          program is written such that options may be repeated, and the
          last occurrence of an option will override any earlier
          occurrences. This allows the user to specify other <i>size</i>
          (<i>-s</i>) options. The <a href="#rrt">rrt</a> command
          performs a similar function, but may be used to execute other
          programs as well. The <i>rtcheck</i> program uses raytracing to
          check for overlapping regions in the list of objects passed on
          the command line. When invoked from within MGED, any discovered
          overlaps along a ray are represented as yellow lines that
          extend only in the areas of overlap. Details and a count of
          overlaps are also reported. Note that overlaps of less than
          0.1&nbsp;mm are currently ignored by <i>rtcheck</i>. The
          default option of <i>-s50</i> indicates that the checking rays
          should be fired from a uniform square grid with 50 rays on a
          side. This is very coarse and may miss significant overlaps. It
          is recommended that the user select appropriate options for the
          <i>rtcheck</i> program and execute it for a variety viewing
          aspects to perform a thorough check. The granularity of the
          grid may be controlled with the <i>-s</i>, <i>-w</i>,
          <i>-n</i>, <i>-g</i>, and <i>-G</i> options. See the <i>man</i>
          page on <i>rtcheck</i> for details.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>rtcheck
            -g10 -G10</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Run the <i>rtcheck</i> program with rays
          fired from a uniform grid with the rays spaced every 10
          mm.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="saveview" id=
                                            "saveview"></a>saveview</b> <i>file</i>
          [<i>args</i>]</span></dt>
      <dd class="c9"><span class="c6">The "saveview" command saves
          the current viewing parameters in the specified <i>file</i> in
          the form of a shell script that will run the <i>BRL-CAD rt</i>
          program as if it had been executed from within MGED using the
          <a href="#rt">rt -s512</a> command. Any <i>args</i> included on
          the <i>saveview</i> command line will be copied to the
          <i>file</i> as options to the <i>rt</i> program. If the
          <i>file</i> already exists, the script will be appended to it.
          This is useful in setting up images to be raytraced later. The
          default script produced by "saveview test.rt" looks
          like:</span></dd>
    </dl>
    <pre class="c21"><span class="c6">
        #!/bin/sh
        rt -M \
        -o test.rt.pix\
        $*\
        model.g\
        'object1' 'object2' \
        2&gt;&gt; test.rt.log\
        &lt;&lt;EOF
        viewsize 2.780320739746094e+02;
        orientation 2.480973490458727e-01 4.765905732660483e-01 7.480973490458729e-01 3.894348305183902e-01;
        eye_pt 1.234152656421214e+02 7.220202900588745e+01 3.845765464924686e+01;
        start 0; clean;
        end;
        EOF</span></pre>
    <div class="c7">
      <p><span class="c6">When this script is executed, the image
          will be stored in <i>test.rt.pix</i>, and all messages and
          errors generated by the <i>rt</i> program will be stored in
          <i>test.rt.log</i>. The above script will produce an image of
          <i>object1</i> and <i>object2</i> from the <i>BRL-CAD</i>
          database named <i>model.g</i>. The <i>viewsize,
            orientation</i>, and <i>eye_pt</i> parameters reproduce the
          view displayed by MGED when the <i>saveview</i> command was
          executed. The presence of "$*" in the script causes any
          additional command-line options given when the script is
          invoked to be interpreted as additional <i>rt</i> options.
          Typically, a "-s" option might be used to set the image size
          (the default is 512 pixels square). See the <i>man</i> page on
          <i>rt</i> for details on available options.</span></p>
      <p><span class="c6"><span class="c2">If you have a
            <i>saveview</i> script and wish to change MGED to that view,
            merely cut-and-paste, or <i>source</i>, the</span> <a href=
                                                                  "#viewsize"><span class="c2">viewsize</span></a><span class=
                                                                                                                        "c2">, </span> <a href="#orientation"><span class=
                                                                                                                                                                    "c2">orientation</span></a><span class="c2">, and</span>
          <a href="#eye_pt"><span class="c2">eye_pt</span></a>
          <span class="c2">lines from the <i>saveview</i> file into
            MGED.</span></span></p>
      <dl>
        <dt class="c8"><span class="c6">Examples:</span></dt>
        <dd></dd>
        <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>saveview
              rt_script -s1024</b></span></dd>
      </dl>
      <div class="c7">
        <p><span class="c6">-- Create (or append to) a file named
            <i>rt_script</i> that will contain a script to run the
            <i>rt</i> program and create a color shaded image of the
            current MGED display. The image produced will be 1024 pixels
            square.</span></p>
      </div>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="sca" id=
                                            "sca"></a>sca</b> <i>sfactor</i></span></dt>
      <dd class="c9"><span class="c16">The "sca" command is used to
          apply a scaling factor. The effect is determined by the
          Transform option in the Settings menu. This is normally
          affected by the current mode of operation in MGED (e.g.,
          matrix edit, primitive edit, or viewing).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt><b>sca
            2</b></span></dd>
      <dt class="c8"><span class="c18">-- In matrix edit mode, the
          object being affected will get twice as big.</span></dt>
      <dd class="c9"><span class="c18">-- In view mode, the size of
          the view will be doubled (showing twice the volume of space,
          hence making objects appear half their previous size on the
          display).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="sed" id=
                                             "sed"></a>sed</b> <i>path</i></span></dt>
      <dd class="c9"><span class="c16">The "sed" command places
          MGED directly into the primitive edit mode. The <a href=
                                                             "#PATH">path</a> must uniquely identify a <a href=
                                                                                                          "#SOLID">primitive shape</a>. If the <i>shape</i> is only
          referenced once in the objects being displayed, then
          <i>path</i> may simply be the shape name. If the <i>shape</i>
          is multiply referenced, then the <i>path</i> should be the
          full <i>path</i> from a top level displayed object to the
          <i>primitive shape</i> to be edited. The <a href=
                                                      "#who">who</a> command will return a list of the top-level
          objects currently being displayed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>sed
            shape1</b></span></dd>
    </dl>
    <p><span class="c6">-- Enter primitive edit state for
        shape1.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="setview" id=
                                            "setview"></a>setview</b> <i>x-angle y-angle
            z-angle</i></span></dt>
      <dd class="c9"><span class="c16">The "setview" command sets
          the current view in MGED by specifying rotation angles (in
          degrees) about the x, y, and z axes. The rotations are
          performed about the z axis first, then the y axis, then the x
          axis. The "setview 0 0 0" command is a synonym for <a href=
                                                                "#press">press top</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>setview
            90 180 90</b></span></dd>
    </dl>
    <p><span class="c6"><span class="c2">-- Set the current view to
          that set by</span> <a href="#ae"><span class="c2">ae 0
            0</span></a><span class="c2">.</span></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="shader" id=
                                            "shader"></a>shader</b> <i>combination shader_name</i>
          [<i>"{shader_args}"</i>]</span></dt>
      <dd class="c9"><span class="c6">The "shader" command assigns
          <a href="#SHADER">shader</a> parameters to the specified
          combination. The <i>shader_name</i> indicates which
          <i>shader</i> should be assigned. If <i>shader_args</i> are
          supplied, they will be assigned to parameters of the
          indicated shader. This performs a similar function as the
          <a href="#mater">mater</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>shader
            group1 checker "{a 0, 255, 0 b 0, 0, 255}"</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Assign the checkerboard shader to
          <i>group1</i> using green and blue colors for the
          squares.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="shells" id=
                                            "shells"></a>shells</b> <i>NMG_shape</i></span></dt>
      <dd class="c9"><span class="c16">The "shells" command
          separates the specified <a href="#NMG">NMG</a> shape into its
          constituent shells. Each shell is written to the database as
          a separate NMG object with a name of the form "shell" with a
          number appended to make the name unique. If the NMG has only
          one shell, then only one new object will be created. This
          differs from the <a href="#decompose">decompose</a> command
          in that decompose will actually break the object into a
          number of separate shells if possible.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>shells
            object.nmg</b></span></dd>
    </dl>
    <p><span class="c6">-- Break the <i>NMG</i> shape named
        <i>object.nmg</i> into its constituent shells.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="showmats" id=
                                            "showmats"></a>showmats</b> <i>path</i></span></dt>
      <dd class="c9"><span class="c16">The "showmats" command lists
          the transformation matrices encountered along the specified
          <a href="#PATH">path</a> and also lists the accumulated
          matrix at the end of the path. If any <a href=
                                                   "#MEMBER">member</a> occurs more than once in a combination
          along the path, then a matrix will be listed for each
          occurrence of that member, and the accumulated matrix will
          only use the first occurrence. Related commands are <a href=
                                                                 "#putmat">putmat</a>, <a href="#copymat">copymat</a>, and
          <a href="#listeval">listeval</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>showmats
            head/skull/jaw</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List the transformation matrices along
          the <i>path</i> "head/skull/jaw" and the accumulated matrix
          for the entire <i>path.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="size" id=
                                            "size"></a>size</b> <i>view_size</i></span></dt>
      <dd class="c9"><span class="c16">The "size" command sets the
          size of the current viewing cube to the specified view_size
          (in local units). This size is the length of any side of the
          square MGED display.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>size
            250</b></span></dd>
    </dl>
    <p><span class="c6"><span class="c2">-- Set the MGED display to
          be 250</span> <a href="#units"><span class=
                                               "c2">units</span></a> <span class=
                                                                           "c2">across.</span></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="solids" id=
                                            "solids"></a>solids</b> <i>file</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "solids" command lists a
          summary of all the <a href="#SOLID">primitive shapes</a> used
          in regions referenced by the list of <i>objects</i>. The
          summary is written to the specified <i>file</i>. The summary
          is similar to that produced by the <a href=
                                                "#regions">regions</a> command, but with the addition of
          <i>primitive shape</i> parameters. The <i>shape</i>
          parameters listed will have the accumulated transformation
          matrices along the <a href="#PATH">path</a> from the listed
          <i>objects</i> to the <i>primitive shape</i> applied (as
          would be listed by the <a href="#listeval">listeval</a>
          command). The <a href="#showmats">showmats</a> command may be
          used to see the actual transformation matrices.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>solids
            shapes_summary group1 regiona</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Write a summary of all the regions in
          <i>group1</i> and include the region named <i>regiona</i>.
          The summary will include detailed <i>shape</i> parameters for
          the shapes used in the regions.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="sphpart" id=
                                            "sphpart"></a>sph</b>-<b>part</b> <i>sph1name sph2name
            newname</i></span></dt>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c6">The "sph-part" command
                creates a <a href="#listeval">PART</a> shape that
                encompasses two specified <a href="#listeval">SPH</a>
                shapes based on their parameters.</span></dt>
          </dl>
        </div>
      </dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>sph-part
            sph1.s sph2.s part.s</b></span></dd>
      <dt class="c8"><span class="c12">-- Create a PART shape named
          <i>part.s</i> that surrounds the spheres <i>sph1.s</i> and
          <i>sph2.s.</i></span></dt>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="status" id=
                                          "status"></a>status</b> [<i>subcommands</i>]</span></dt>
    <dd class="c9"><span class="c6">Without a subcommand, the
        <i>status</i> command returns the following information:
        current state, view size of the current display manager, the
        conversion factor from local model units to the base units
        (mm) stored in the database, and the view matrices of the
        current display manager. <i>Status</i> accepts the following
        subcommands:</span></dd>
    <dd>
      <div class="c7">
        <dl>
          <dt class="c8"><span class="c12">state</span></dt>
          <dt class="c8"><span class="c12">Get the current state
              of MGED (i.e., "VIEWING, " "SOL PICK, " "SOL EDIT, " "OBJ
              PICK, " "OBJ PATH, " "OBJ EDIT, " or
              "VERTPICK").</span></dt>
          <dd></dd>
          <dt class="c8"><span class="c12">Viewscale</span></dt>
          <dd class="c9"><span class="c12">Get the view
              scale.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">base2local</span></dt>
          <dd class="c9"><span class="c12">Get the conversion
              factor from base units (mm) to local units.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">local2base</span></dt>
          <dd class="c9"><span class="c12">Get the conversion
              factor from local units to base units (mm).</span></dd>
          <dd></dd>
          <dt class="c8"><span class=
                               "c12">toViewcenter</span></dt>
          <dd class="c9"><span class="c12">Get the matrix that
              describes the location of the view center.</span></dd>
          <dt class="c8"><span class="c12">Viewrot</span></dt>
          <dd class="c9"><span class="c12">Get the matrix that
              describes the view orientation.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">model2view</span></dt>
          <dd class="c9"><span class="c12">Get the model to view
              conversion matrix.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">view2model</span></dt>
          <dd class="c9"><span class="c12">Get the view to model
              conversion matrix.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">model2objview</span></dt>
          <dd class="c9"><span class="c12">Get the model to view
              conversion matrix. This matrix also includes changes made
              during editing.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">objview2model</span></dt>
          <dd class="c9"><span class="c12">Get the view to model
              conversion matrix. This matrix also includes changes made
              during editing.</span></dd>
          <dd></dd>
          <dt class="c8"><span class="c12">help</span></dt>
          <dd class="c9"><span class="c12">Print the usage
              message.</span></dd>
          
        </dl>
        <dt class="c8">Examples:</dt>
        <dd class="c9">
          <tt>mged&gt; </tt><span class="c2"><b>status</b></span>
          <p>-- Get default information (i.e., state, view size,
            local2base, toViewcenter, Viewrot, model2view and
            view2model).</p>
          <tt>mged&gt; </tt><span class="c2"><b>status Viewrot</b></span>
          <p>-- Get the view rotation matrix.</p>
          <tt>mged&gt; </tt><span class="c2"><b>status state</b></span>
          <p>-- Get the edit state.</p>
        </dd>
      </div>
    </dd>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="summary" id=
                                            "summary"></a>summary</b> [<i>s r g</i>]</span></dt>
      <dd class="c9"><span class="c6">The "summary" command with no
          arguments lists the number of <a href="#SOLID">primitive
            shapes</a>, <a href="#REGION">regions</a>, and non-region
          <a href="#COMBINATION">combinations</a> in the current
          database. If the <i>s</i> argument is supplied, then the name
          of each <i>primitive shape</i> is also listed. Similarly, the
          <i>r</i> flag asks for the <i>region</i> names, and <i>g</i>
          asks for the names of all the <a href=
                                           "#COMBINATION">combinations</a> (including <i>region</i>).
          The flags may be concatenated to get combined
          output.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>summary
            sr</b></span></dd>
      <p><span class="c6">-- List a summary of primitive shapes and
          regions for the current database.</span></p>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="sv" id=
                                            "sv"></a>sv</b> <i>x y</i> [<i>z</i>]</span></dt>
      <dd class="c9"><span class="c6">The "sv" command moves the
          view center to (<i>x, y, z</i>). If <i>z</i> is not provided,
          then <i>z</i>=0 is used. The parameters <i>x, y, z</i> are
          integer values relative to the screen. For example, the
          center of the screen is (0, 0, 0) and the upper left corner
          is (-2048, 2047, 0).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>sv 0 0
            0</b></span></dd>
    </dl>
    <p><span class="c6">-- The view is unchanged.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>sv 1024 0 0</b><br>
            -- The view center is moved half way between the current view
            center and the right side of the view
            screen.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="sync" id=
                                          "sync"></a><b>sync</b></span></dt>
      <dd class="c9"><span class="c12">The "sync" command causes
          all information in memory that should be on disk to be
          written out.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>sync</b></span></dd>
    </dl>
    <p><span class="c12">-- Make sure disk files are up to
        date.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="t" id=
                                            "t"></a>t</b> [<i>-a -c -r -s</i>]
          [<i>objects</i>]</span></dt>
      <dd class="c9"><span class="c6">The "t" command with no
          <i>object</i> argument lists the name of every object in the
          database (in alphabetical order) except those marked as
          hidden with the <a href="#ls">hide</a> command. If the
          <i>object</i> argument is supplied, only those <i>objects</i>
          are listed. The <i>object</i> argument may include regular
          expressions for matching. The following options are also
          allowed:</span></dd>
    </dl>
    <ul>
      <li><span class="c6">a - list all objects in the
          database.</span></li>
      <li><span class="c6">c - list all non-hidden combinations in
          the database.</span></li>
      <li><span class="c6">r - list all non-hidden regions in the
          database.</span></li>
      <li><span class="c6">s - list all non-hidden shapes in the
          database.</span></li>
    </ul>
    <div class="c7">
      <p><span class="c6"><span class="c2">The <i>t</i> command is
            a synonym for the</span> <a href="#ls"><span class=
                                                         "c2">ls</span></a> <span class="c2">command. Note that when
            any of the above options is used, the output is not
            formatted.</span></span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>t
            shape*</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List all objects with names beginning
          with "shape."<br>
          (output is formatted)</span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>t -a shape*</b><br>
            -- List all objects with names beginning with
            "shape."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>t -s wheel*</b><br>
            -- List all shapes with names beginning with
            "wheel."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>t -r wheel*</b><br>
            -- List all regions with names beginning with
            "wheel."</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>t -c
              suspension*</b><br>
            -- List all combinations with names beginning with
            "suspension."</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="ted" id=
                                          "ted"></a><b>ted</b></span></dt>
      <dd class="c9"><span class="c12">The "ted" command places the
          parameters of the currently edited <a href="#SOLID">primitive
            shape</a> into a file, then starts a text editor for the user
          to modify the parameters. The editor used is whatever the
          user has set in the environment variable <i>EDITOR</i>. If
          <i>EDITOR</i> is not set, then <i>/bin/ed</i> is used. MGED
          must be in the primitive edit mode prior to using this
          command. The <a href="#red">red</a> command performs a
          similar function for <a href=
                                  "#COMBINATION">combinations</a>.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c12"><tt>mged&gt; </tt>
          <b>ted</b></span></dd>
    </dl>
    <p><span class="c12">-- Use a text editor to modify the
        currently edited shape.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="title" id=
                                            "title"></a>title</b> [<i>string</i>]</span></dt>
      <dd class="c9"><span class="c6">The "title" command, with no
          arguments, returns the title string for the current database.
          If command line arguments are supplied, they will become the
          new title string for the current database. Quotation marks
          must be doubly escaped.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>title
            This is my \\"database\\"</b></span></dd>
    </dl>
    <p><span class="c6">-- Set the title of the current database to
        <i>This is my "database."</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="tol" id=
                                            "tol"></a>tol</b> [<i>abs #</i>] [<i>rel #</i>] [<i>norm
            #</i>] [<i>dist #</i>] [<i>perp #</i>]</span></dt>
      <dd class="c9"><span class="c6">The "tol" command, with no
          arguments, lists the current tolerance settings. If the
          command line includes any of the keywords followed by a
          number, then that tolerance setting will be modified. The
          keywords are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><span class="c2">Tessellation
            tolerances:<br>
            The tessellation tolerances are used to control the
            facetization of</span> <a href="#SOLID"><span class=
                                                          "c2">primitive shapes</span></a><span class="c2">. If more
            than one tolerance value is specified, the tessellation is
            performed to meet the most stringent.</span></span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">abs -- This <i>absolute</i>
              tolerance is specified in model units and represents the
              maximum allowable error in the distance from the actual
              shape surface to the tessellated surface. An
              <i>absolute</i> tolerance of 0 means that the
              <i>absolute</i> tolerance should be ignored.</span></li>
          <li><span class="c6">rel -- This <i>relative</i>
              tolerance is specified in terms of a fraction of the
              shape size. The value is multiplied by the size of the
              shape to determine another bound on the maximum allowable
              error in the distance from the actual shape surface to
              the tessellated surface. A <i>relative</i> tolerance of 0
              means that the <i>relative</i> tolerance should be
              ignored.</span></li>
          <li><span class="c6">norm -- This <i>normal</i> tolerance
              is specified in degrees and represents the maximum angle
              between the actual shape surface normal and the
              tessellated surface normal. A <i>normal</i> tolerance of
              0 means that the <i>normal</i> tolerance should be
              ignored.</span></li>
        </ul>
      </li>
      <li><span class="c6"><span class="c2">Calculational
            tolerances:<br>
            The calculational tolerances are used in evaluating
            the</span> <a href="#BOOLEAN"><span class="c2">Boolean
              operations</span></a> <span class="c2">specified in a</span>
          <a href="#COMBINATION"><span class=
                                       "c2">combination</span></a><span class="c2">. This is used,
            for example, in the</span> <a href="#ev"><span class=
                                                           "c2">ev</span></a><span class="c2">, </span> <a href=
                                                                                                           "#facetize"><span class="c2">facetize</span></a><span class=
                                                                                                                                                                 "c2">, and</span> <a href="#bev"><span class=
                                                                                                                                                                                                        "c2">bev</span></a> <span class=
                                                                                                                                                                                                                                  "c2">commands.</span></span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">dist -- The <i>distance</i>
              tolerance is specified in model units and represents the
              minimum distance required between two vertices to
              consider them distinct.</span></li>
          <li><span class="c6">perp -- The <i>perpendicularity</i>
              tolerance is specified as the cosine of an angle. Two
              objects will be considered perpendicular if the cosine of
              the angle between them is less than the
              <i>perpendicularity</i> tolerance. Similarly, two objects
              will be considered parallel if the cosine of the angle
              between them is greater than 1.0, the
              <i>perpendicularity</i> tolerance.</span></li>
        </ul>
      </li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>tol rel
            .05 perp 1e-6</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Set the <i>relative</i> tolerance to
          5% and the <i>perpendicularity</i> tolerance to 1e-06 (cosine
          of 89.9999˚).</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="tops" id=
                                            "tops"></a>tops</b> [<i>-g -n -u</i>]</span></dt>
      <dd class="c9"><span class="c6">The "tops" command displays a
          list of all the <i>top-level</i> objects in the current
          database. The top-level objects are all those objects that
          are not referenced by some other combination. The
          hierarchical structure of <i>BRL-CAD</i> databases usually
          means that there will be a top-level object that includes all
          (or at least most) of the objects in the database. The
          <i>-g</i> option shows only geometry objects. The <i>-n</i>
          option specifies that no "decoration" (e.g., "/" and "/R") be
          shown at the end of each object name. The <i>-u</i> option
          will not show hidden objects. See also the <a href=
                                                        "#HIDE">hide command.</a></span></dd>
      <dd class="c9"><span class="c6"><a href=
                                         "#HIDE"></a></span></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>tops</b></span></dd>
    </dl>
    <p><span class="c6">-- List all the top-level objects in the
        current database.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="torrcc" id=
                                            "torrcc"></a>tor</b>-<b>rcc</b> <i>torname
            newname</i></span></dt>
      <dd>
        <div class="c7">
          <dl>
            <dt class="c8"><span class="c6">The "tor-rcc" command
                creates an <a href="#listeval">RCC</a> shape that fills
                in the hole of a specified <a href=
                                              "#listeval">TOR</a>.</span></dt>
            <dd></dd>
            <dt class="c8"><span class="c6">&nbsp;</span></dt>
          </dl>
        </div>
      </dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>tor-rcc
            tor.s rcc.s</b></span></dd>
      <dt class="c8"><span class="c12">-- Create an RCC named
          <i>rcc.s</i> to fill in the hole in the middle of
          <i>tor</i>.<i>s.</i></span></dt>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b>tra</b> <i>dx dy
          dz</i></span></dt>
    <dd class="c9"><span class="c16">The "tra" command translates
        the view or an object. Exactly what is done is determined by
        MGED�s state as well as the state of the current display
        manager. The parameters dx, dy, and dz are in local
        units.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd></dd>
    <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>tra 10 0
          0</b></span></dd>
    
    <p><span class="c6">-- Translate by 10 units along the <i>x</i>
        axis.</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="track" id=
                                            "track"></a>track</b> [<i>parameters</i>]</span></dt>
      <dd class="c9"><span class="c6">The "track" command builds a
          simple representation of the linked track of a vehicle such
          as a tank. With no command line arguments, the <i>track</i>
          command will prompt for all the required input. The vehicle
          is assumed to be axis-aligned with the front in the +<i>x</i>
          direction. A combination name for the track is built by
          appending a unique number to the string "track." The
          information about the track may be included on the command
          line, and is order-dependent. The parameters are (in
          order):</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><i><span class="c2">x</span></i>
          <span class="c2">coordinate of center of frontmost
            roadwheel.</span></span></li>
      <li><span class="c6"><i>x</i> coordinate of center of
          rearmost roadwheel.</span></li>
      <li><span class="c6"><i>z</i> coordinate of center of all
          roadwheels.</span></li>
      <li><span class="c6">radius of all roadwheels.</span></li>
      <li><span class="c6"><i>x</i> coordinate of center of drive
          wheel (rear).</span></li>
      <li><span class="c6"><i>z</i> coordinate of center of drive
          wheel (rear).</span></li>
      <li><span class="c6">radius of drive wheel.</span></li>
      <li><span class="c6"><i>x</i> coordinate of center of idler
          wheel (front).</span></li>
      <li><span class="c6"><i>z</i> coordinate of center of idler
          wheel (front).</span></li>
      <li><span class="c6">radius of idler wheel.</span></li>
      <li><span class="c6"><i>y</i> coordinate of right side of
          track.</span></li>
      <li><span class="c6"><i>y</i> coordinate of left side of
          track.</span></li>
      <li><span class="c6">track thickness.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>track
            500 0 10 10 -50 50 10 550 50 10 -50 -20 2</b></span></dd>
    </dl>
    <p><span class="c6">-- Build a simple track using the provided
        arguments.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="translate" id=
                                            "translate"></a>translate</b> <i>x y z</i></span></dt>
      <dd class="c9"><span class="c16">The "translate" command is
          used to precisely control the translation of an object in
          both primitive edit and matrix edit modes. The keypoint of
          the edited object or shape is translated to the specified
          coordinates.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c16"><tt>mged&gt; </tt>
          <b>translate 10 20 30</b></span></dd>
    </dl>
    <p><span class="c16">-- Move the currently edited object to the
        model coordinates (10 20 30).</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="tree" id=
                                             "tree"></a>tree</b> [<i>-c</i>] [<i>-i #</i>] [<i>-o
            outfile</i>] <i>object(s)</i></span></dt>
      <dd class="c9"><span class="c16">The "tree"command will list
          the contents of the specified objects in a tree-like format
          that displays the hierarchical structure of the objects, and
          all objects referenced by them, down to the <a href=
                                                         "#SOLID">primitive shape</a> level. If -c is given, the
          shapes are not printed. The -o outfile option prints the
          results to outfile. The -i # option allows the user to set
          the number of spaces to indent.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>tree
            group1</b></span></dd>
    </dl>
    <p><span class="c6">-- Show the structure of the tree rooted at
        <i>group1</i> down to the primitive shape level.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>tree -i 2
              group1</b><br>
            -- This time use two spaces for each level of
            indentation.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>tree -c group1</b><br>
            -- No shapes are printed.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="units" id=
                                            "units"></a>units</b> [<i>units_type</i>]</span></dt>
      <dd class="c9"><span class="c6">The "units" command, with no
          arguments, will return the current type of units that MGED is
          using. If a <i>units_type</i> is specified, MGED will switch
          to editing in the indicated units. The actual database is
          always stored in millimeters, and the display is adjusted to
          the users choice of units. If the <i>units_type</i> specified
          on the command line is one of the types allowed, it will be
          written to the database file as the preferred units and
          succeeding invocations will use those units. The
          <i>units_type</i> strings that will be remembered as the
          preferred editing unit are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6">mm -- millimeters.</span></li>
      <li><span class="c6">millimeter -- millimeters.</span></li>
      <li><span class="c6">cm -- centimeters.</span></li>
      <li><span class="c6">centimeter -- centimeters.</span></li>
      <li><span class="c6">m -- meters.</span></li>
      <li><span class="c6">meter -- meters.</span></li>
      <li><span class="c6">in -- inches.</span></li>
      <li><span class="c6">inch -- inches.</span></li>
      <li><span class="c6">ft -- feet.</span></li>
      <li><span class="c6">foot -- feet.</span></li>
      <li><span class="c6">feet -- feet.</span></li>
      <li><span class="c6">um -- micrometers.</span></li>
    </ul>
    <div class="c7">
      <p><span class="c6"><i>Units_type</i> strings that may be
          used, but will not be remembered as the preferred editing
          units, are:</span></p>
    </div>
    <ul>
      <li><span class="c6">angstrom.</span></li>
      <li><span class="c6">decinanometer.</span></li>
      <li><span class="c6">nanometer.</span></li>
      <li><span class="c6">nm.</span></li>
      <li><span class="c6">micron.</span></li>
      <li><span class="c6">micrometer.</span></li>
      <li><span class="c6">km.</span></li>
      <li><span class="c6">kilometer.</span></li>
      <li><span class="c6">cubit.</span></li>
      <li><span class="c6">yd.</span></li>
      <li><span class="c6">yard.</span></li>
      <li><span class="c6">rd.</span></li>
      <li><span class="c6">rod.</span></li>
      <li><span class="c6">mi.</span></li>
      <li><span class="c6">mile.</span></li>
      <li><span class="c6">nmile.</span></li>
      <li><span class="c6">nautical mile.</span></li>
      <li><span class="c6">au.</span></li>
      <li><span class="c6">astronomical unit.</span></li>
      <li><span class="c6">lightyear.</span></li>
      <li><span class="c6">pc.</span></li>
      <li><span class="c6">parsec.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">&nbsp;</span></dt>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>units
            in</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Switch to editing in "inches" and
          remember this as the preferred editing units for this
          database.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="vars" id=
                                            "vars"></a>vars</b>
          [<i>variable</i>=<i>value</i>]</span></dt>
      <dd class="c9"><span class="c6">The "vars" command, with no
          arguments, will list all the MGED variables and their values.
          If a <i>variable</i>=<i>value</i> string is included on the
          command line, then that <i>value</i> is assigned to the
          specified <i>variable</i>. Note that no spaces are allowed
          around the "=". The available <i>variables</i>
          are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6">autosize -- if nonzero, then MGED will
          set the view size whenever it draws to an empty
          display.</span></li>
      <li><span class="c6">rateknobs -- if nonzero, then the knobs
          and sliders act as rate adjustments; otherwise, they act as
          absolute adjustments.</span></li>
      <li><span class="c6">sliders -- if nonzero, the sliders are
          displayed.</span></li>
      <li><span class="c6">faceplate -- if nonzero, the MGED
          faceplate is displayed.</span></li>
      <li><span class="c6">orig_gui -- if nonzero, the "viewing"
          menu is displayed.</span></li>
      <li><span class="c6">linewidth -- indicates how wide to draw
          lines.</span></li>
      <li><span class="c6">linestyle -- set line style of wireframe
          shapes. Currently not being used.</span></li>
      <li><span class="c6">hot_key -- the X11 keysym definition for
          the key to toggle the <i>send_key</i> value. The default is
          "0xFFC6" (65478 decimal), which is the F9 key. The keysym
          values are defined in the X11 file named
          <i>keysymdef.h</i>.</span></li>
      <li><span class="c6"><span class="c2">context -- if nonzero
            (the default), then primitive editing parameters entered via
            the</span> <a href="#p"><span class="c2">p</span></a>
          <span class="c2">command will be applied to the edited shape
            in the context of the</span> <a href=
                                            "#COMBINATION"><span class="c2">combination</span></a>
          <span class="c2">tree above it in the displayed hierarchy.
            This means, for example, a translation applied to a shape
            will translate the shape to some point such that when the
            transformation matrices for that</span> <a href=
                                                       "#PATH"><span class="c2">path</span></a> <span class="c2">are
            applied, the edited shape will appear at the specified
            location. If <i>context</i> is set to zero, then the
            primitive edit operations will be applied directly to the
            edited shape. This means that a translation to a specific
            point may result in the edited shape being drawn at a point
            different from that specified (due to transformations in the
            <i>combination</i> tree above it). Note that this only
            affects primitive edit operations that use the <i>p</i>
            command.</span></span></li>
      <li><span class="c6">dlist -- if nonzero, use display
          lists.</span></li>
      <li><span class="c6">use_air -- if nonzero, use air while
          raytracing.</span></li>
      <li><span class="c6">listen -- if nonzero, listen for
          connections to MGED�s built-in fbserv.</span></li>
      <li><span class="c6">port -- port for the built-in fbserv to
          use.</span></li>
      <li><span class="c6">fb -- if nonzero, then framebuffer is
          active.</span></li>
      <li><span class="c6">fb_all -- if nonzero, use entire
          geometry window for the framebuffer; otherwise, use only the
          rectangular area.</span></li>
      <li><span class="c6">fb_overlay -- if nonzero, overlay
          framebuffer image over geometry; otherwise, draw geometry
          over the framebuffer image.</span></li>
      <li><span class="c6">mouse_behavior -- see the following list
          of mouse behaviors:</span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">c -- fire ray for combination edit
              selection.</span></li>
          <li><span class="c6">d -- default behavior (i.e., as
              found in classic MGED).</span></li>
          <li><span class="c6">m -- fire ray for matrix edit
              selection.</span></li>
          <li><span class="c6">p -- paint rectangular
              area.</span></li>
          <li><span class="c6">q -- fire query rays.</span></li>
          <li><span class="c6">r -- raytrace rectangular
              area.</span></li>
          <li><span class="c6">s -- fire ray for primitive edit
              selection.</span></li>
          <li><span class="c6">z -- zoom rectangular
              area.</span></li>
        </ul>
      </li>
      <li><span class="c6">coords -- see the following list of
          coordinate systems to use for transformations:</span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">m -- model coordinates.</span></li>
          <li><span class="c6">v -- view coordinates.</span></li>
          <li><span class="c6">o -- object coordinates.</span></li>
        </ul>
      </li>
      <li><span class="c6">rotate_about -- see the following list
          of centers of rotation:</span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">v -- view center.</span></li>
          <li><span class="c6">e -- eye.</span></li>
          <li><span class="c6">m -- model origin.</span></li>
          <li><span class="c6">k -- keypoint.</span></li>
        </ul>
      </li>
      <li><span class="c6">transform -- see the following list of
          things to transform:</span></li>
      <li class="c23">
        <ul>
          <li><span class="c6">a -- transform the angle distance
              cursor if active; otherwise same as v.</span></li>
          <li><span class="c6">e -- apply transformations to the
              edit.</span></li>
          <li><span class="c6">v -- apply transformations to the
              view.</span></li>
        </ul>
      </li>
      <li><span class="c6">predictor -- if nonzero, the predictor
          frame will be displayed.</span></li>
      <li><span class="c6">predictor_advance -- the number of
          seconds into the future to advance the predictor
          frame.</span></li>
      <li><span class="c6">predictor_length -- not currently
          used.</span></li>
      <li><span class="c6">perspective -- if greater than zero,
          this is the perspective angle in degrees; otherwise,
          perspective is turned off.</span></li>
      <li><span class="c6">perspective_mode -- if nonzero, turn
          perspective on; otherwise, turn it off.</span></li>
      <li><span class="c6">toggle_perspective -- used to toggle
          among the four canned perspective angles (i.e., 30, 45, 60,
          and 90).</span></li>
      <li><span class="c6"><span class="c2">nmg_eu_dist -- when the
            <i>-u</i> option to the</span> <a href="#ev"><span class=
                                                               "c2">ev</span></a> <span class="c2">command is used,
            the</span> <a href="#NMG"><span class="c2">NMG</span></a>
          <span class="c2">edgeuses are drawn this distance (mm) away
            from the actual edge.</span></span></li>
      <li><span class="c6">eye_sep_dist -- if greater than zero,
          this is the eye separation distance (mm) for stereo viewing;
          otherwise, stereo is off.</span></li>
      <li><span class="c6">union_op -- not currently
          used.</span></li>
      <li><span class="c6">intersection_op -- not currently
          used.</span></li>
      <li><span class="c6">difference_op -- not currently
          used.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>vars
            sliders=1</b></span></dd>
    </dl>
    <p><span class="c6">-- Turn on the <i>sliders.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="vdraw" id=
                                            "vdraw"></a>vdraw</b> <i>command</i>
          [<i>args</i>]</span></dt>
      <dd class="c9"><span class="c6">The "vdraw" command allows
          drawing of lines and polygons (optionally with per vertex
          normals) in the MGED graphics display. It is used to build a
          named list of drawing commands for MGED, send the list to the
          MGED display, modify the list, or delete all or part of the
          list. All vertices in the <i>vdraw</i> command are in
          millimeters. The MGED drawing commands are represented by
          integers in the <i>vdraw</i> command. The MGED drawing
          commands and the integers that <i>vdraw</i> uses for them
          are:</span></dd>
    </dl>
    <p align="center"></p>
    <div class="c1">
      <table border cellspacing="1" cellpadding="3" width="100%">
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class="c14">MGED Drawing
                Command</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><b><span class="c2">Vdraw
                  integer</span></b></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><b><span class="c2">MGED
                  Action</span></b></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_LINE_MOVE</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">0</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">begin a new line at
                this point</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_LINE_DRAW</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">1</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">draw line from
                previous point to this point</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_POLY_START</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">2</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">start polygon
                (argument is surface normal)</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_POLY_MOVE</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">3</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">move to first
                polygon vertex</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_POLY_DRAW</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">4</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">subsequent polygon
                vertices</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_POLY_END</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">5</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">last polygon vertex
                (should be same as first)</span></p>
          </td>
        </tr>
        <tr>
          <td width="41%" valign="middle">
            <p align="center"><span class=
                                    "c2">RT_VLIST_POLY_VERTNORM</span></p>
          </td>
          <td width="9%" valign="middle">
            <p align="center"><span class="c2">6</span></p>
          </td>
          <td width="50%" valign="middle">
            <p align="center"><span class="c2">vertex normal (for
                shading interpolation)</span></p>
          </td>
        </tr>
      </table>
    </div>
    <p><span class="c6">The <i>vdraw</i> commands are:</span></p>
    <ul>
      <li><span class="c6">open -- with no arguments, this returns
          "1" if there is a open list; "0" otherwise. If an argument is
          supplied, a command list is opened with the provided
          name.</span></li>
      <li><span class="c6">write -- with arguments of <i>i c x y
            z</i>, the MGED drawing command #<i>c</i> is placed in the
          <i>i<sup>th</sup></i> position of the command list with the
          vertex as (<i>x y z</i>).<br>
          -- with arguments of <i>next c x y z</i>, the command is
          placed at the end of the list.</span></li>
      <li><span class="c6">insert -- with arguments of <i>i c x y
            z</i>, the MGED drawing command #<i>c</i> is inserted just
          before the <i>i<sup>th</sup></i> position of the command
          list.</span></li>
      <li><span class="c6">delete -- with an integer argument of
          <i>i</i>, the <i>i<sup>th</sup></i> command is deleted.<br>
          -- with an argument of "last, " the last command on the list
          is deleted.<br>
          -- with an argument of "all, " all the commands on the list
          are deleted.</span></li>
      <li><span class="c6">params -- with an argument of <i>color
            rrggbb</i>, the color of all objects on this list is set. The
          <i>rrggbb</i> is a hex number representing the color,
          "ffffff" is white, "ff0000" is red, "00ff00" is green,
          etc.<br>
          -- with a single string argument, the name of the current
          list is changed.</span></li>
      <li><span class="c6">read -- with an integer argument of
          <i>i</i>, the <i>i<sup>th</sup></i> command is returned.<br>
          -- with an argument of "color, " the current color is
          returned.<br>
          -- with an argument of "length, " the number of commands in
          the current list is returned.<br>
          -- with an argument of "name, " the name of the current
          command list is returned.</span></li>
      <li><span class="c6">send -- send the current command list to
          the MGED display manager.</span></li>
      <li><span class="c6">vlist -- with an argument of "list, "
          return a list of the names of all existing command lists.<br>
          -- with an argument of <i>delete list_name</i>, delete the
          specified command list.</span></li>
    </ul>
    <p><span class="c6"><br>
        All textual arguments may be abbreviated by their first
        letter.</span></p>
    <p><span class="c6">&nbsp;</span></p>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>vdraw
            open square</b></span></dd>
    </dl>
    <p><span class="c6">-- Open a list named
        <i>square.</i></span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw params color
              ff00</b><br>
            -- Set color to green.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw write next 0 0 0
              0</b><br>
            -- Start a line at the origin.</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw write next 1 100
              0 0</b><br>
            -- Draw line to (100 0 0).</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw write next 1 100
              100 0</b><br>
            -- Draw line to (100 100 0).</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw write next 1 0
              100 0</b><br>
            -- Draw line to (0 100 0).</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw write next 1 0 0
              0</b><br>
            -- Draw line to (0 0 0).</span></span></p>
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vdraw send</b><br>
            -- Draw the square in the MGED display.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="view" id=
                                            "view"></a>view</b> <i>subcommand</i></span></dt>
      <dd class="c9"><span class="c16">Get/set view parameters
          (local units). The view command accepts the following
          subcommands:</span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><br>
          <b>center</b> [<i>x y z</i>]--get/set the view center of the
          current view.</span></p>
      <dl>
        <dt class="c8"><span class="c6"><b>size</b>
            [<i>val</i>]--get/set the view size of the current
            view.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>eye</b> [<i>x y
              z</i>]--get/set the eye point of the current
            view.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>ypr</b> [<i>y p
              r</i>]--get/set the yaw, pitch, and roll of the current
            view.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>quat</b> [<i>v1 v2 v3
              v4</i>]--get/set the view in the form of a
            quaternion.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>aet</b> [<i>a e
              t</i>]--get/set the azimuth, elevation, and twist of the
            current view.</span></dt>
        <dd class="c9"><span class="c6">&nbsp;</span></dd>
      </dl>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>view
            center</b></span></dd>
    </dl>
    <p><span class="c6">-- Get the view center.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>view center 0 0
              0</b><br>
            -- Set the view center at the origin of model
            space.</span></span></p>
    </div>
    <p><span class="c6"><a name="viewsize" id=
                           "viewsize"></a></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b>viewsize</b>
          <i>view_size</i></span></dt>
      <dd class="c9"><span class="c6">The "viewsize" command sets
          the size of the current viewing cube to the
          specified</span></dd>
      <dd class="c9"><span class="c6">view_size (in local units).
          This size is the length of any side of the square mged
          display. This command is a synonym for the <a href=
                                                        "#nirt">size</a> command.</span></dd>
      <dd></dd>
      <dd></dd>
      <dd class="c9"><span class="c6">Examples:</span></dd>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>viewsize
            250</b></span></dd>
      <dd class="c9"><span class="c12">-- Set the mged display to
          be 250 <a href="#nirt">units</a> across.</span></dd>
    </dl>

    <hr class="c3">
    <dt class="c8"><span class="c6"><b><a name="vnirt" id=
                                          "vnirt"></a>vnirt</b> [<i>nirt args</i>] <i>x
          y</i></span></dt>
    <dd class="c9"><span class="c16">This command interprets x
        and y as view coordinates (i.e., +-2047) and converts them to
        model coordinates (local units) using a value of 2047 for
        view z before passing them to <a href="#nirt">nirt</a>. All
        other arguments are passed to nirt without
        modification.</span></dd>
    
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="vquery_ray" id=
                                            "vquery_ray"></a>vquery_ray</b> <i>x y</i></span></dt>
      <dd class="c9"><span class="c16">Same as <a href=
                                                  "#vnirt">vnirt</a>.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="vrot" id=
                                            "vrot"></a>vrot</b> <i>xrot yrot zrot</i></span></dt>
      <dd class="c9"><span class="c16">The "vrot" command rotates the
          view on the current geometry display window. The parameters
          xrot, yrot, and zrot are rotations (specified in degrees) about
          the <a href="#VIEW_COORDINATES">viewing coordinate
            axes</a>.</span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br>
            If the display is in rotate-about-center mode, then the
            rotation will occur about the center of the viewing volume.
            In rotate-about-eye mode, the view on the display will be
            rotated about the eye. The</span> <a href=
                                                 "#vars"><span class="c2">vars</span></a> <span class=
                                                                                                "c2">command (or a menu button) allows the user to toggle
            between the two modes.</span></span></p>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>vrot 90
            0 0</b></span></dd>
    </dl>
    <p><span class="c6">-- Rotate 90 degrees about view <i>x</i>
        axis.</span></p>
    <div class="c7">
      <p><span class="c6"><span class="c2"><br></span>
          <tt>mged&gt; </tt><span class="c2"><b>vrot 0 180 0</b><br>
            -- Rotate 180 degrees about view <i>y</i>
            axis.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="wcodes" id=
                                            "wcodes"></a>wcodes</b> <i>file</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "wcodes" command writes
          <a href="#IDENT">ident</a>, <a href="#SPACE">air code</a>,
          <a href="#GIFTMAT">material code</a>, <a href="#LOS">LOS</a>,
          and name of all the <a href="#REGION">regions</a> in the list
          of <i>objects</i> to the specified <i>file</i>. The format
          used is compatible with the <a href="#rcodes">rcodes</a>
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>wcodes
            code_file group1 group2</b></span></dd>
    </dl>
    <p><span class="c6">-- Write region data for all the regions in
        <i>group1</i> and <i>group2</i> to <i>code_file.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="whatid" id=
                                            "whatid"></a>whatid</b> <i>region_name</i></span></dt>
      <dd class="c9"><span class="c16">The "whatid" command lists
          the <a href="#IDENT">ident</a> number of the specified
          region.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>whatid
            regiona</b></span></dd>
    </dl>
    <p><span class="c6">-- Get the <i>ident</i> number for
        <i>regiona.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="which_shader" id=
                                            "which_shader"></a>which_shader</b>
          &lt;<i>shaders</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "which_shader" command
          lists all the <a href="#REGION">regions</a> that use one of
          the <i>shaders</i> specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>which_shader plastic light</b></span></dd>
    </dl>
    <p><span class="c6">-- List all <i>regions</i> in the current
        database that use the <i>plastic</i> or <i>light</i>
        shaders.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="whichair" id=
                                            "whichair"></a>whichair</b>
          &lt;<i>air_codes</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "whichair" command lists
          all the <a href="#REGION">regions</a> that use one of the
          <a href="#SPACE">air codes</a> specified. The <a href=
                                                           "#eac">eac</a> command will perform a similar search, but
          will draw the qualifying regions in the MGED display rather
          than listing them. Regions that have nonzero <a href=
                                                          "#IDENT">ident numbers</a> will not be listed by this
          command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>whichair
            2 3</b></span></dd>
    </dl>
    <p><span class="c6">-- List all <i>regions</i> in the current
        database that have <i>air codes</i> of 2 or 3.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="whichid" id=
                                            "whichid"></a>whichid</b> &lt;<i>idents</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "whichid" command lists
          all the <a href="#REGION">regions</a> that use one of the
          <a href="#IDENT">idents</a> specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>whichid
            1002 1003</b></span></dd>
    </dl>
    <p><span class="c6">-- List all <i>regions</i> in the current
        database that have <i>idents</i> of 1002 or 1003.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="who" id=
                                            "who"></a>who</b> [<i>real</i> | <i>phony</i> |
          <i>both</i>]</span></dt>
      <dd class="c9"><span class="c6">The "who" command lists the
          top-level objects that are currently displayed. The
          <i>phony</i> flag asks for just <i>phony</i> objects.
          <i>Phony</i> objects are typically objects that are drawn in
          the MGED display, but are not actual database objects. Some
          <i>phony</i> objects are drawings from the <a href=
                                                        "#vdraw">vdraw</a> command and the edgeuses drawn by the
          <a href="#ev">ev -u</a> command. The <i>real</i> flag asks
          for just <i>real</i> objects, and the <i>both</i> flag asks
          for both <i>real</i> and <i>phony</i> objects. The default is
          just <i>real</i> objects. Any of the flags may be abbreviated
          by its first letter. The <a href="#x">x</a> command also
          lists displayed shapes, but in more detail.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>who
            p</b></span></dd>
    </dl>
    <p><span class="c6">-- List all top-level <i>phony</i> objects
        currently displayed.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="wmater" id=
                                            "wmater"></a>wmater</b> <i>file</i>
          &lt;<i>objects</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "wmater" command lists
          the <a href="#SHADER">shader</a> name and parameters,
          <a href="#RGB">RGB</a> color, <i>RGB_valid</i> flag, and the
          <a href="#INHERITANCE">inheritance</a> flag to the specified
          <i>file</i> for the listed <i>objects</i>. The format used is
          compatible with the <a href="#rmater">rmater</a> command. If
          <i>file</i> already exists, the new data is appended to
          it.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>wmater
            mater_file group1 regiona</b></span></dd>
    </dl>
    <p><span class="c6">-- List the shader parameters of
        <i>group1</i> and <i>regiona</i> to
        <i>mater_file.</i></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="x" id=
                                            "x"></a>x</b> [<i>level</i>]</span></dt>
      <dd class="c9"><span class="c6">The "x"command lists all the
          <a href="#SOLID">primitive shapes</a> currently drawn in the
          MGED display. The <i>level</i> determines how much detail
          should be included in the list. For <i>level</i> zero (the
          default), only a list of paths to shapes in the display list
          is produced. Each shape is prefixed by "VIEW" or "-no-, "
          indicating that the shape is actually being drawn or that it
          is being skipped, respectively. If <i>level</i> is greater
          than zero, the center, size, <a href="#IDENT">ident
            number</a>, <a href="#RGB">RGB</a> color assigned to the
          region, and the actual color used to draw the shape are also
          listed. If <i>level</i> is greater than one, the number of
          vlist structures and the number of points in each vlist
          structure are also listed for each shape. If <i>level</i> is
          greater than two, then the actual lines drawn for each shape
          are also listed. The <a href="#who">who</a> command performs
          a similar function, but lists only the top-level objects that
          are displayed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt>
          <b>x</b></span></dd>
    </dl>
    <p><span class="c6">-- List the paths to the displayed
        shapes.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="xpush" id=
                                            "xpush"></a>xpush</b> <i>object</i></span></dt>
      <dd class="c9"><span class="c16">The "xpush" command "pushes"
          the effects of transformation matrices in the <a href=
                                                           "#PATH">paths</a>, from the specified object to the <a href=
                                                                                                                  "#SOLID">primitive shapes</a>, into the shapes and replaces
          all the transformation matrices with identity matrices. The
          <a href="#push">push</a> command performs a similar function,
          but will refuse to make any changes if any shape needs to be
          transformed into more than one location/orientation/scale.
          The xpush command will recognize such situations and create
          extra copies of such shapes to accept the different
          transformation effects. New shapes created by this command
          will have a suffix appended to the original name to make the
          new name unique. <a href="#COMBINATION">Combinations</a>
          referring to the new shape will also be modified to reflect
          the name change. The <a href="#push">push</a> command
          performs the same function but will refuse to make any
          changes if it cannot accomplish the "push" without creating
          any new shapes.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>xpush
            group1</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Move all the effects of the
          transformation matrices in the tree rooted at <i>group1</i>
          down to the shape level (creating new shapes if
          needed).</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="zoom" id=
                                            "zoom"></a>zoom</b> <i>scale_factor</i></span></dt>
      <dd class="c9"><span class="c16">The "zoom" command changes
          the size of the viewing cube for the MGED display, resulting
          in a "zoom in" or "zoom out" effect. A scale_factor greater
          than one reduces the size of the viewing cube ("zoom in"). A
          scale_factor of less than one increases the size of the
          viewing cube ("zoom out").</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd></dd>
      <dd class="c9"><span class="c6"><tt>mged&gt; </tt><b>zoom
            2</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Reduces the size of the current
          viewing cube by half (effectively doubling the size of
          objects in the display).</span></p>
    </div>
    <hr class="c3">
    <p><span class="c6"><a name="MGED_Developer_Commands" id=
                           "MGED_Developer_Commands"></a></span></p>
    <h1><span class="c1">MGED Developer Commands</span></h1>
    <ul class="menu">
      <li class="menu"><a href="#aip">aip</a></li>
      <li class="menu"><a href="#cmd_win">cmd_win</a></li>
      <li class="menu"><a href="#collaborate">collaborate</a></li>
      <li class="menu"><a href="#get_comb">get_comb</a></li>
      <li class="menu"><a href="#get_dm_list">get_dm_list</a></li>
      <li class="menu"><a href="#get_edit_solid">get_edit_solid</a></li>
      <li class="menu"><a href="#get_more_default">get_more_default</a></li>
      <li class="menu"><a href="#grid2model_lu">grid2model_lu</a></li>
      <li class="menu"><a href="#grid2view_lu">grid2view_lu</a></li>
      <li class="menu"><a href="#gui_destroy">gui_destroy</a></li>
      <li class="menu"><a href="#hist">hist</a></li>
      <li class="menu"><a href="#make_name">make_name</a></li>
      <li class="menu"><a href="#mged_update">mged_update</a></li>
      <li class="menu"><a href="#mmenu_get">mmenu_get</a></li>
      <li class="menu"><a href="#mmenu_set">mmenu_set</a></li>
      <li class="menu"><a href="#model2grid_lu">model2grid_lu</a></li>
      <li class="menu"><a href="#model2view">model2view</a></li>
      <li class="menu"><a href="#model2view_lu">model2view_lu</a></li>
      <li class="menu"><a href="#output_hook">output_hook</a></li>
      <li class="menu"><a href="#put_comb">put_comb</a></li>
      <li class="menu"><a href="#put_edit_solid">put_edit_solid</a></li>
      <li class="menu"><a href="#reset_edit_solid">reset_edit_solid</a></li>
      <li class="menu"><a href="#rset">rset</a></li>
      <li class="menu"><a href="#set_more_default">set_more_default</a></li>
      <li class="menu"><a href="#share">share</a></li>
      <li class="menu"><a href="#solids_on_ray">solids_on_ray</a></li>
      <li class="menu"><a href="#stuff_str">stuff_str</a></li>
      <li class="menu"><a href="#svb">svb</a></li>
      <li class="menu"><a href="#tie">tie</a></li>
      <li class="menu"><a href="#view2grid_lu">view2grid_lu</a></li>
      <li class="menu"><a href="#view2model">view2model</a></li>
      <li class="menu"><a href="#view2model_lu">view2model_lu</a></li>
      <li class="menu"><a href="#view2model_vec">view2model_vec</a></li>
      <li class="menu"><a href="#view_ring">view_ring</a></li>
      <li class="menu"><a href="#viewget">viewget</a></li>
      <li class="menu"><a href="#viewset">viewset</a></li>
      <li class="menu"><a href="#winset">winset</a></li>
    </ul>
    
    <hr class="c3">
    <p><span class="c12"><a name="aip" id="aip"></a></span></p>
    <p><span class="c6"><b>aip</b> [<i>f|b</i>]</span></p>
    <dl>
      <dd class="c9"><span class="c6">The "aip" command advances
          the <a href="#ill">illumination</a> pointer when MGED is in
          the <a href="#ill">solid illuminate</a> state or the <a href=
                                                                  "#ill">object illuminate</a> state. In either of the
          <i>illuminate</i> states, a single primitive shape is
          highlighted at one time, and the path to that shape is
          displayed. Moving the mouse vertically in the MGED display
          causes different shapes to be highlighted and their paths to
          be displayed. The <i>aip</i> command causes the next shape in
          the list to be highlighted (if used with no arguments or the
          <i>f</i> argument), or it causes the previous shape in the
          list to be highlighted (if used with the <i>b</i> argument).
          When the desired shape is highlighted, it is selected by
          clicking the middle mouse button or by using the <a href=
                                                              "#M">M</a> command. If MGED is in the <a href="#ill">object
            path</a> state, the place along the path where the edit is to
          take place will advance. Once the desired path position is
          displayed, it is selected by clicking the middle mouse button
          or by using the <a href="#M">M</a> command.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <a href=
                                                  "#press">press</a> <b>sill</b></span></dd>
    </dl>
    <p><span class="c6">-- Enter solid (i.e., primitive) illuminate
        mode.</span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>aip</b><br>
          -- Highlight the next shape.</span></p>
      <p><span class="c6"><br>
          mged <b>aip b</b><br>
          -- Highlight the previous shape.</span></p>
      <p><span class="c6"><span class="c2"><br>
            mged</span> <a href="#M"><span class=
                                           "c2">M</span></a> <b><span class="c2">1 0 0</span></b>
          <span class="c2"><br>
            -- Select the highlighted shape.</span></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="cmd_win" id=
                                            "cmd_win"></a>cmd_win</b> <i>subcommand</i></span></dt>
      <dd class="c9"><span class="c16">This command is used to
          maintain internal command window structures. The cmd_win
          command accepts the following subcommands:</span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6"><b><span class="c2">open</span></b>
          <span class="c2"><i>id --</i> This subcommand is used to
            create the internal data structures for a new command window.
            If <i>id</i> is already in use, nothing is
            changed.</span></span></p>
      <dl>
        <dt class="c8"><span class="c6"><b>close</b> <i>id --</i>
            This subcommand releases <i>id</i>�s internal data
            structures. If the referenced command window is <a href=
                                                               "#tie">tied</a> to a display manager, then that association
            is also removed.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>set</b> <i>id --</i>
            This subcommand sets the current command window to
            <i>id</i>. If this command window is <a href=
                                                    "#tie">tied</a> to a display manager, that display manager
            becomes the current display manager.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>get</b> -- This
            subcommand returns the id of the current command
            window.</span></dt>
      </dl>
    </div>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>cmd_win open
            my_id</b></span></dd>
    </dl>
    <p><span class="c6">-- Create a command window named
        <i>my_id</i>.</span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>cmd_win close my_id</b><br>
          -- Closes the command window <i>my_id.</i></span></p>
      <p><span class="c6"><br>
          mged <b>cmd_win set my_id</b><br>
          -- <i>my_id</i> becomes the current command
          window.</span></p>
      <p><span class="c6"><br>
          mged <b>cmd_win get</b><br>
          -- Gets the current command window.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="collaborate" id=
                                            "collaborate"></a>collaborate</b>
          <i>subcommand</i></span></dt>
      <dd class="c9"><span class="c16">This command is used to
          maintain the "collaborative session." The collaborative
          session is a list whose members share a view and view ring
          among the upper right display manager panes. The collaborate
          command accepts the following subcommands:</span></dd>
    </dl>
    <div class="c7">
      <dl>
        <p><span class="c6"><br>
            <b>join</b> <i>id --</i> This causes the GUI associated with
            <i>id</i> to join the collaborative session.</span></p>
        <dt class="c8"><span class="c6"><b>quit</b> <i>id --</i> This
            causes the GUI associated with <i>id</i> to quit the
            collaborative session.</span></dt>
        <dd></dd>
        <dt class="c8"><span class="c6"><b>show</b> -- This returns
            the list of participants (ids) in the collaborative
            session.</span></dt>
        <dd></dd>
      </dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <div class="c7">
        <dd class="c9">
          <p><span class="c6">mged&gt; <b>collaborate join
                bill</b></span></p>
          <p><span class="c6">-- <i>bill</i> is added to the
              collaborative session.</span></p>
          <p><span class="c6"><br>
              mged <b>collaborate quit bill</b><br>
              -- <i>bill</i> is removed from the collaborative
              session.</span></p>
          <p><span class="c6"><br>
              mged <b>collaborate show</b><br>
              -- Show list of collaborative participants.</span></p>
        </dd>
      </div>
    </div>

    <hr class="c3">
    <p><span class="c6"><b><a name="get_comb" id=
                              "get_comb"></a>get_comb</b> <i>comb_name</i></span></p>
    <dl>
      <dd class="c9"><span class="c6">The "get_comb" command
          returns a Tcl list of information about <i>comb_name</i>. If
          <i>comb_name</i> is a region, the following information is
          returned:</span></dd>
    </dl>
    <p align="center"><span class="c6"><br>
        <i>NAME REGION REGION_ID AIRCODE GIFT_MATERIAL</i><br>
        <i>LOS COLOR SHADER INHERIT BOOLEAN_FORMULA</i></span></p>
    <p><span class="c6">Otherwise, the following shorter list is
        returned:</span></p>
    <p align="center"><span class="c16">NAME REGION COLOR SHADER
        INHERIT BOOLEAN_FORMULA</span></p>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>get_comb
            some_region</b></span></dd>
    </dl>
    <p><span class="c6">some_region Yes 1000 0 1 100 {0 220 220}
        plastic No { u box - ball }<br></span></p>
    <div class="c7">
      <p><span class="c6">mged <b>get_comb some_non_region</b><br>
          some_non_region No {0 220 220} plastic No { u box2 - ball2
          }</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="get_dm_list" id=
                                          "get_dm_list"></a><b>get_dm_list</b></span></dt>
      <dd class="c9"><span class="c12">The "get_dm_list" command
          returns a list of all open display managers. The members of
          this list are the actual Tcl/Tk window names of the open
          display managers.</span></dd>
    </dl>
    <p><span class="c12"><a name="get_edit_solid" id=
                            "get_edit_solid"></a></span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="get_more_default"
                                          id="get_more_default"></a><b>get_more_default</b></span></dt>
      <dd class="c9"><span class="c12">Returns the current default
          input value.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="grid2model_lu"
                                            id="grid2model_lu"></a>grid2model_lu</b> <i>gx
            gy</i></span></dt>
      <dd class="c9"><span class="c16">Given a point in grid
          coordinates (local units), convert it to model coordinates
          (local units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="grid2view_lu"
                                             id="grid2view_lu"></a>grid2view_lu</b> gx gy</span></dt>
      <dd class="c9"><span class="c16">Given a point in grid
          coordinates (local units), convert it to view coordinates
          (local units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="gui_destroy" id=
                                             "gui_destroy"></a>gui_destroy</b> id</span></dt>
      <dd class="c9"><span class="c16">Destroy the GUI (Graphical
          User Interface) represented by id. Note that this GUI must
          have been created with the <a href="#gui">gui</a>
          command.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="hist" id=
                                            "hist"></a>hist</b> <i>subcommand</i></span></dt>
      <dd class="c9"><span class="c16">This command is used to
          maintain command history. Hist accepts the following
          subcommands:</span></dd>
      <ul>
        <dt class="c8">add</dt>
        <dd class="c9"><span class="c16">This adds command to the
            <a href="#history">history</a> list of commands executed
            during the current MGED session. If command is more than one
            word, it must be surrounded by braces (i.e., {make box
            arb8}).</span></dd>
        <dd></dd>
        <dt class="c8"><span class="c12">next</span></dt>
        <dd class="c9"><span class="c12">This returns the next
            command in the command history list.</span></dd>
        <dd></dd>
        <dt class="c8"><span class="c12">prev</span></dt>
        <dd class="c9"><span class="c12">This returns the previous
            command in the command history list.</span></dd>
        <dd></dd>
        <br>
        <dt class="c8"><span class="c12">Examples:</span></dt>
        <dd class="c9">
          <p><span class="c12">mged&gt; <b>hist add {ae 35 25}</b><br>
              <span class="c12">-- Add the command "ae 35 25" to the
                history list.<br></span></p>
          </span>
          <p><span class="c12">mged&gt; <b>ae 0 90</b></span></p>
          <p><span class="c12">mged&gt; <b>hist prev</b><br>
              -- Return the previous command (i.e., ae 0 90).</span></p>
        </dd>
      </ul>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="make_name" id=
                                            "make_name"></a>make_name</b> <i>template</i></span></dt>
      <dd></dd>
      <dt class="c8"><span class="c16"><b>make_name</b> -s
          [num]</span></dt>
      <dd class="c9"><span class="c16">This command generates an
          object name that does not occur in the database. The name,
          which is generated in the format specified by template,
          contains an integer count. By default, this count appears at
          the end of the generated name, but if template contains the
          �@� character, then the count appears at that position in the
          name.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>make_name
            wheel</b></span></dd>
    </dl>
    <p><span class="c6">-- Returns, say "wheel5."</span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>make_name tree@trunk</b><br>
          -- Returns "tree@trunk." The two-character string �@@� is
          interpreted as the literal �@�, and thus is ignored for the
          purposes of positioning the name count. The integer counter
          starts at 0, and, by default, it is incremented each time
          <i>make_name</i> is executed. The <i>-s</i> option resets
          this counter. If the argument <i>num</i> is specified, the
          counter is set to this value. Otherwise, it is set to
          0.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mged_update" id=
                                            "mged_update"></a>mged_update</b>
          <i>non_blocking</i></span></dt>
      <dd class="c9"><span class="c16">This command is used to
          handle outstanding events and to refresh the MGED display(s).
          This may be useful in certain Tcl scripts to maintain
          interactivity while waiting for user input. Note that if
          non_blocking is negative, outstanding events will not be
          processed. That is, only the MGED display(s) will be
          refreshed.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>mged_update
            0</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Update the MGED display, blocking
          (i.e., handle all outstanding events; if none, wait for
          one).</span></p>
      <p><span class="c6"><br>
          mged <b>mged_update 1</b><br>
          -- Update the MGED display, nonblocking (i.e., handle all
          outstanding events; if none, return immediately).</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="mmenu_get" id=
                                            "mmenu_get"></a>mmenu_get</b> [<i>i</i>]</span></dt>
      <dd class="c9"><span class="c6">This command is used to get
          MGED�s internal menus. If <i>i</i> is not specified, return
          all three internal menus. Otherwise, return the
          <i>i<sup>th</sup></i> menu. Note - valid values for <i>i</i>
          are 0, 1, or 2.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt;
          <b>mmenu_get</b></span></dd>
    </dl>
    <p><span class="c6">-- Return all internal menus.</span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>mmenu_get 2</b><br>
          -- Return the internal menu number 2.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="mmenu_set" id=
                                          "mmenu_set"></a></span></dt>
      <dt class="c8"><span class="c6"><b>mmenu_set</b> <i>id
            i</i></span></dt>
      <dd class="c9"><span class="c16">This Tcl proc is used to
          set/install MGED�s i<sup>th</sup> internal menu in the Tcl/Tk
          button menu owned by id.</span></dd>
      <dd class="c9"><span class="c6">mged&gt; <b>mmenu_set bill
            0</b></span></dd>
    </dl>
    <p><span class="c6">-- Install MGED�s 0<sup>th</sup> internal
        menu into <i>id</i>�s button menu.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="model2grid_lu"
                                            id="model2grid_lu"></a>model2grid_lu</b> <i>mx my
            mz</i></span></dt>
      <dd class="c9"><span class="c16">Convert a point in model
          coords (local units) to a point in grid coords (local
          units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="model2view" id=
                                             "model2view"></a>model2view</b> x y z</span></dt>
      <dd class="c9"><span class="c16">The "model2view" command
          converts the supplied point (in model coordinates) to view
          coordinates. View coordinates are the coordinates in the
          viewing cube with values between -1.0 and +1.0 being inside
          the viewing cube.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd class="c9"><span class="c16">mged&gt; <b>model2view 10 20
            30</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c16">-- Display the view coordinates that
          correspond to the point (10 20 30) in model space.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="model2view_lu"
                                             id="model2view_lu"></a>model2view_lu</b> <i>mx my
            mz</i></span></dt>
      <dd class="c9"><span class="c16">Convert a point in model
          coordinates (local units) to a point in view coordinates
          (local units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="output_hook" id=
                                             "output_hook"></a>output_hook</b>
          [<i>hook_cmd</i>]</span></dt>
      <dd class="c9"><span class="c16">Set up to have output from
          bu_log sent to hook_cmd. If hook_cmd is not specified, the
          output hook is deleted.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="put_comb" id=
                                            "put_comb"></a>put_comb</b> <i>comb_name is_Region</i> [<i>id
            air gift los</i>] <i>color shader inherit
            Boolean_expr</i></span></dt>
      <dd class="c9"><span class="c16">The "put_comb" command
          defines the combination comb_name. If is_Region is Yes, then
          id, air, gift and los must be specified. If is_Region is No,
          then id, air, gift, and los must not be
          specified.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>put_comb
            not_region No \"0 220 220\" plastic No \"u box\\n-
            ball\"</b></span></dd>
    </dl>
    <p><span class="c6">-- Defines a combination called
        <i>not_region.</i></span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>put_comb my_region Yes 1000 0 1 100 \"0 220 220\"
            plastic No \"u box\\n- ball\"</b><br>
          -- Defines a region called <i>my_region.</i></span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c12"><a name="put_edit_solid" id=
                                          "put_edit_solid"></a><a name="reset_edit_solid" id=
                                                                  "reset_edit_solid"></a><b>reset_edit_solid</b></span></dt>
      <dd class="c9"><span class="c12">Reset the parameters for the
          currently edited shape (i.e. es_int) to the database
          values.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><a name="rset" id=
                                          "rset"></a></span></dt>
    </dl>

    <hr class="c3">
    <dt><b>rset</b> [<i>res_type</i> [<i>res</i>
      [<i>vals</i>]]]</dt>
    <dd class="c9"><span class="c6">Provides a mechanism to
        get/set resource values for the given resource types. The
        supported resource types are: ax (Axes), c (Color Schemes), g
        (Grid), r (Rubber Band), and var (MGED Variables). Basically,
        <i>rset</i> always gets a value unless enough information is
        given to set a value. For example, with no parameters,
        <i>rset</i> returns a list of all resource values for the
        supported resource types. If <i>rset</i> is executed with
        only the <i>res_type</i> given, a list of all resource values
        for the given <i>res_type</i> is returned.</span></dd>
    <dd></dd>
    <dt class="c8"><span class="c6">Examples:</span></dt>
    <dd class="c9"><span class="c6">mged&gt; <b>rset
          g</b></span></dd>
    <div class="c7">
      <p><span class="c6">Grid</span></p>
      <div class="c7">
        <p><span class="c6">draw=0<br>
            snap=0<br>
            anchor=0, 0, 0<br>
            rh=1<br>
            rv=1<br>
            mrh=5<br>
            mrv=5</span></p>
      </div>
      <p><span class="c6"><br>
          mged <b>rset g snap</b><br>
          -- Get value for grid snapping 0.</span></p>
      <p><span class="c6"><br>
          mged <b>rset g snap 1</b><br>
          -- Enable snapping.</span></p>
      <p><span class="c6"><br>
          mged <b>rset r</b><br>
          Rubber Band<br>
          draw=0<br>
          linewidth=0<br>
          linestyle=�s�<br>
          pos=0, 0<br>
          dim=0, 0</span></p>
      <p><span class="c6"><br>
          mged <b>rset r draw</b><br>
          -- Get value for "Rubber Band�s" draw variable
          0.<br></span></p>
      <p><span class="c6">mged <b>rset r draw 1</b><br>
          -- Draw rubber band.</span></p>
      <p><span class="c6">mged <b>rset ax</b></span></p>
      <p><span class="c6">Axes<br>
          model_draw=0<br>
          model_size=500<br>
          model_linewidth=1<br>
          model_pos=0, 0, 0<br>
          view_draw=0<br>
          view_size=500<br>
          view_linewidth=1<br>
          view_pos=0, 0<br>
          edit_draw=0<br>
          edit_size1=500<br>
          edit_size2=500<br>
          edit_linewidth1=1<br>
          edit_linewidth2=1.</span></p>
      <p><span class="c6">--Prints the values of the
          axes<br></span></p>
      <p><span class="c6">mged <b>rset ax model_size</b><br>
          -- Get size of model axes 500.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="set_more_default"
                                            id="set_more_default"></a>set_more_default</b>
          <i>more_default</i></span></dt>
      <dd class="c9"><span class="c16">Set the current default
          input value.</span></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="share" id=
                                             "share"></a>share</b> [-u] resource dm1 [dm2]</span></dt>
      <dd class="c9"><span class="c16">The "share" command provides
          a mechanism to share (or unshare with the <b>�u</b> option)
          resources among display managers. When a resource is shared
          between two or more display managers, any change to that
          resource is seen only in the sharing display managers. The
          supported resource types are: ad (ADC), ax (Axes), c (Color
          Schemes), d (Display Lists), g (Grid), m (Menu), r (Rubber
          Band), vi (View), and var (MGED Variables).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c16">Examples:</span></dt>
      <dd class="c9"><span class="c16">mged&gt; <b>share g .dm_ogl0
            .dm_ogl1</b></span></dd>
    </dl>
    <p><span class="c16">-- .dm_ogl0 shares its grid resource with
        .dm_ogl1.</span></p>
    <div class="c7">
      <p><span class="c16"><br>
          mged <b>share -u g .dm_ogl1</b><br>
          -- .dm_ogl1 acquires a private copy of the grid
          resource.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="solids_on_ray"
                                             id="solids_on_ray"></a>solids_on_ray</b> <i>h
            v</i></span></dt>
      <dd class="c9"><span class="c16">List all displayed shapes
          along a ray.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="stuff_str" id=
                                             "stuff_str"></a>stuff_str</b> <i>string</i></span></dt>
      <dd class="c9"><span class="c16">Sends a string to MGED�s
          tty, while leaving the current command line alone. This is
          used to relay the activity of Tcl/Tk command windows to
          MGED�s tty. If MGED is no longer attached to a tty, nothing
          happens.</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c18"><a name="svb" id=
                                          "svb"></a><b>svb</b></span></dt>
      <dd class="c9"><span class="c18">The "svb" command sets the
          view reference base variables, which are used internally by
          the <a href="#knob">knob</a> command to implement absolute
          rotation, translation, and scale.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c18">Examples:</span></dt>
      <dd class="c9"><span class="c18">mged&gt;
          <b>svb</b></span></dd>
    </dl>
    <p><span class="c18">-- Set the view reference base variables
        with respect to the current view.</span></p>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="tie" id=
                                             "tie"></a>tie</b> [[<i>-u</i>] <i>command_window</i>
          [<i>display_window</i>]]</span></dt>
      <dd class="c9"><span class="c6">The "tie" command is used to
          create (or untie/destroy with the <b>-u</b> option) an
          association between a command window and a display window.
          When there exists such an association, all commands entered
          from the command window will be directed at the associated
          display window. The <i>command_window</i> can be specified
          with MGED to refer to the tty from which MGED was started or
          an id associated with a Tcl/Tk interface window <a href=
                                                             "#gui">created with <i>gui</i></a> . The
          <i>display_window</i> is specified with its Tcl/Tk pathname.
          If no parameters are given, a listing of the current
          <i>command_window</i>/<i>display_window</i> pairs is
          returned. If only the <i>command_window</i> is given, the
          <i>display_window</i> associated with <i>command_window</i>
          is returned. If both parameters are given, the
          <i>command_window</i>/<i>display_window</i> association is
          created.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>tie my_id
            .my_display_window</b></span></dd>
    </dl>
    <p><span class="c6">-- Create the association between my_id and
        .my_display_window.</span></p>
    <div class="c7">
      <p><span class="c6">mged <b>tie my_id</b><br>
          .my_display_window<br>
          -- Returns the display window associated with
          my_id.</span></p>
      <p><span class="c6"><br>
          mged <b>tie</b><br>
          {my_id .my_window} {mged {}}<br>
          -- List all of the command_window/display_window
          pairs.</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="view2grid_lu" id=
                                            "view2grid_lu"></a>view2grid_lu</b> <i>vx vy
            vz</i></span></dt>
      <dd class="c9"><span class="c16">Given a point in view
          coordinates (local units), converts to grid coordinates
          (local units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="view2model" id=
                                             "view2model"></a>view2model</b> x y z</span></dt>
      <dd class="c9"><span class="c16">The "view2model" command
          converts the specified point (x y z) in view coordinates to
          model coordinates (mm). The part of view space displayed by
          MGED is the cube -1.0 &lt;= x, y, z &lt;= +1.0.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>view2model 1 1
            0</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- List the model coordinates of the
          upper right corner of the MGED display (in a plane at the
          center of the viewing cube).</span></p>
    </div>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="view2model_lu"
                                            id="view2model_lu"></a>view2model_lu</b> <i>vx vy
            vz</i></span></dt>
      <dd class="c9"><span class="c16">Given a point in view
          coordinates (local units), converts to model coordinates
          (local units).</span></dd>
    </dl>
    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="view2model_vec"
                                             id="view2model_vec"></a>view2model_vec</b> vx vy
          vz</span></dt>
      <dd class="c9"><span class="c16">Given a vector in view
          coordinates, convert it to model coordinates.</span></dd>
    </dl>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c16"><b><a name="view_ring" id=
                                             "view_ring"></a>view_ring</b> subcommand</span></dt>
      <dd class="c9"><span class="c16">This manipulates the view
          ring for the current display manager. The view ring is a list
          of views owned by a display manager. Views can be added or
          removed and can also be traversed or queried. View_ring
          accepts the following subcommands:</span></dd>
    </dl>
    <p><span class="c12"><b>add</b></span></p>
    <dl>
      <dd class="c9"><span class="c6">This subcommand adds the
          current view to the view ring.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><b>next</b></span></dt>
      <dd class="c9"><span class="c12">This subcommand makes the
          next view on the view ring the current view.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><b>prev</b></span></dt>
      <dd class="c9"><span class="c12">This subcommand makes the
          previous view on the view ring the current view.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c12"><b>toggle</b></span></dt>
      <dd class="c9"><span class="c12">This subcommand toggles
          between the current view and the last view.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>delete</b>
          <i>vid</i></span></dt>
      <dd class="c9"><span class="c16">This subcommand
          removes/deletes the view with a view id of vid from the view
          ring. The last view cannot be removed (i.e., there is always
          one view on the view ring).</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>goto</b>
          <i>vid</i></span></dt>
      <dd class="c9"><span class="c16">This subcommand makes the
          view with a view id of vid the current view.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6"><b>get</b>
          [<i>-a</i>]</span></dt>
      <dd class="c9"><span class="c6">Returns the id of the current
          view. If <i>-a</i> is specified, all view ids on the view
          ring are returned.</span></dd>
      <dd></dd>
      <br>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>view_ring
            add</b></span></dd>
    </dl>
    <p><span class="c6">-- Add the current view to the view
        ring.</span></p>
    <div class="c7">
      <p><span class="c6"><br>
          mged <b>view_ring goto 1</b><br>
          -- Go to view 1.</span></p>
      <p><span class="c6"><br>
          mged <b>view_ring delete 1</b><br>
          -- Delete view 1 from the view ring.</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="viewget" id=
                                            "viewget"></a>viewget</b> <i>parameter</i></span></dt>
      <dd class="c9"><span class="c16">The "viewget" command
          displays various mged view parameters. The possible
          parameters are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><span class="c2">aet -- list the</span>
          <a href="#AZIMUTH"><span class=
                                   "c2">azimuth</span></a><span class="c2">, </span> <a href=
                                                                                        "#ELEVATION"><span class=
                                                                                                           "c2">elevation</span></a><span class="c2">, and</span>
          <a href="#TWIST"><span class="c2">twist</span></a>
          <span class="c2">for the current viewing
            aspect.</span></span></li>
      <li><span class="c6">center -- list the model coordinates
          (mm) of the center of the viewing cube.</span></li>
      <li><span class="c6">size -- list the size (mm) of a side the
          current MGED display.</span></li>
      <li><span class="c6">eye -- list the model coordinates (mm)
          of the current eye point.</span></li>
      <li><span class="c6">ypr -- list the yaw, pitch, and roll
          angles (degrees) of the current viewing aspect.</span></li>
      <li><span class="c6">quat -- list the quaternion for the
          current viewing aspect.</span></li>
    </ul>

    <dt class="c8">Examples:</dt>
    <dd class="c9"><span class="c6">mged&gt; <b>viewget
          center</b></span></dd>

    <p><span class="c6">-- List the model coordinates of the center
        of the MGED viewing cube.</span></p>
    <p><span class="c6">&nbsp;</span></p>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="viewset" id=
                                            "viewset"></a>viewset</b> &lt;<i>parameter
            value</i>&gt;</span></dt>
      <dd class="c9"><span class="c6">The "viewset" command sets
          various MGED view parameters. More than one parameter may be
          set with one command. The possible parameters
          are:</span></dd>
    </dl>
    <ul>
      <li><span class="c6"><span class="c2">aet -- set the</span>
          <a href="#AZIMUTH"><span class="c2">azimuth</span></a><span class="c2">, </span> <a href="#ELEVATION"><span class=
                                                                                                                      "c2">elevation</span></a><span class="c2">, and</span>
          <a href="#TWIST"><span class="c2">twist</span></a>
          <span class="c2">for the current viewing
            aspect.</span></span></li>
      <li><span class="c6">center -- set the model coordinates (mm)
          of the center of the viewing cube.</span></li>
      <li><span class="c6">size -- set the size (mm) of a side of
          the current MGED display.</span></li>
      <li><span class="c6">eye -- set the model coordinates (mm) of
          the current eye point.</span></li>
      <li><span class="c6">ypr -- set the yaw, pitch, and roll
          angles (degrees) of the current viewing aspect.</span></li>
      <li><span class="c6">quat -- set the quaternion for the
          current viewing aspect.</span></li>
    </ul>
    <dl>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>viewset center 1
            2 3 size 100</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- Set the model coordinates of the
          center of the MGED viewing cube to the point (1 2 3) and set
          the size of the viewing cube to 100 mm.</span></p>
      <p><span class="c6">&nbsp;</span></p>
    </div>

    <hr class="c3">
    <dl>
      <dt class="c8"><span class="c6"><b><a name="winset" id=
                                            "winset"></a>winset</b> [<i>pathName</i>]</span></dt>
      <dd class="c9"><span class="c6">The "winset" command sets the
          current display manager to <i>pathName</i>. If
          <i>pathName</i> is not given, the current display manager is
          returned.</span></dd>
      <dd></dd>
      <dt class="c8"><span class="c6">Examples:</span></dt>
      <dd class="c9"><span class="c6">mged&gt; <b>winset
            .my_window</b></span></dd>
    </dl>
    <div class="c7">
      <p><span class="c6">-- .my_window is now the current display
          manager.<br></span></p>
      
      <span class="c6">mged <b>winset</b><br>
        -- Returns the current display manager (i.e.,
        .my_window).<br>
        <br></span>
    </div>

    <table cellspacing="8">
      <tr>
        <td><a href="mged_cmd_index.html#MGED_User_Commands">MGED
            User Commands</a></td>
        <td><a href=
               "mged_cmd_index.html#MGED_Developer_Commands">MGED
            Developer Commands</a></td>
      </tr>
    </table>
  </body>
</html>
